Excel Interop:如何将工作表复制到另一个工作簿?

Excel Interop: How to copy a worksheet to another workbook?

我需要将一些工作簿的工作表合并到一个新工作簿中。我试过的是这个,但我得到 "Unable to get the Copy property of the Worksheet class"。我究竟做错了什么?谢谢!

foreach (var sourceFileName in sourceFileNames)
{
    var sourceWorkbook = GetWorkbook(sourceFileName);

    var sourceSheet = (Worksheet)sourceWorkbook.Worksheets[1];
    var lastSheetInDestinationWorkbook = (Worksheet)_destinationWorkbook.Worksheets[_destinationWorkbook.Worksheets.Count];
    sourceSheet.Copy(After: lastSheetInDestinationWorkbook);

    sourceWorkbook.Close();
}
((Worksheet)_workbook.Sheets[1]).Delete();
_workbook.Save();

我的错误是将工作簿加载到不同的应用程序对象中。使用相同的应用程序对象解决了问题。

感谢@HansPassant 指点我。