如何将Excel工作表从工作簿A复制到工作簿B

时间:2019-02-20 10:02:12

标签: c# excel

我有以下代码将Sheet1从一个工作簿(test1.xlsx)复制到另一个工作簿(test2.xlsx)。该代码没有任何错误,并且需要永久执行,因此我不得不停止代码而文件中没有任何更改。请让我知道怎么了。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Excel = Microsoft.Office.Interop.Excel;

namespace Read_from_Excel_file
{
    class Program
    {
        static void Main(string[] args)
        {
            Excel.Application xlApp = new Excel.Application();

            Excel.Workbook test1 = xlApp.Workbooks.Open(@"C:\Users\namokhtar\Desktop\test1.xlsx");

            Excel.Workbook test2 = xlApp.Workbooks.Open(@"C:\Users\namokhtar\Desktop\test2.xlsx");

            test2.Worksheets.Copy(test1.Worksheets["Sheet1"]);

            test2.Save();

            test1.Close();

            test2.Close();

            xlApp.Quit();

        }
    }
}

1 个答案:

答案 0 :(得分:1)

我认为您需要指定将工作表复制到的位置。因此,在

test2.Worksheets.Copy(test1.Worksheets["Sheet1"]);

您必须在test2中指定要将工作表复制到其中的工作表。test2.Worksheets["whateverworksheetyouwanttooverwrite"].Copy(test1.Worksheets["Sheet1"]);

来源:(https://docs.microsoft.com/nl-nl/visualstudio/vsto/how-to-programmatically-copy-worksheets?view=vs-2017