如何使用 EPPlus for .NET 将 Excel 工作表从一个文件复制到另一个文件

Ovy*_*ate 4 .net excel vba epplus

鉴于以下场景:

  • 我有一个包含多个工作表(worksheet1、worksheet2、workshToCopy 等)的 source.xlsx 文件,我根据另一个 .xlsx 模板文件生成了 destination.xlsx,该模板文件的工作表与 source.xlsx 不同。我想将源文件中的工作表添加到目标文件中。

现在我可以像这样将一个空工作表添加到我的目标文件中:

if (FileExists(outputFile) && FileExists(inputFile))
{
  var inputPackage = new ExcelPackage(inputFile);
  var outputPackage = new ExcelPackage(outputFile);

  var summaryInputWorksheet = inputPackage.Workbook.Worksheets[ExcelSummaryHelper.SummaryWorksheet];
  outputPackage.Workbook.Worksheets.Add(summaryInputWorksheet.Name);
  outputPackage.Workbook.Worksheets.MoveToEnd(summaryInputWorksheet.Name);
  outputPackage.Save();
}
Run Code Online (Sandbox Code Playgroud)

使用 EPPlus 库将 workshToCopy 的内容从 source.xlsx 复制到 destination.xlsx 的新工作表的最佳方法是什么?

Ovy*_*ate 7

解决了。

ExcelWorksheets 类上的 Add 方法有一个重载,如下所示:

ExcelWorksheets.Add(string Name, ExcelWorksheet Copy)
Run Code Online (Sandbox Code Playgroud)

不敢相信我没见过。