![在 C# 中复制 Excel 工作表](images/Copy-Worksheets.jpg#center)
在某些情况下,您可能需要将工作表复制到 Excel 工作簿中或从一个工作簿复制到另一个工作簿。另一方面,在不同的场景中也需要移动工作表来改变它们在工作簿中的位置。为了以编程方式执行上述任务,本文展示了如何在 C# 中复制 Excel 工作表。此外,它还介绍了如何更改工作表在 Excel 工作簿中的位置。
用于复制 Excel 工作表的 C# API - 免费下载
为了在 Excel 文件中复制工作表,我们将利用 Aspose.Cells for .NET 强大的电子表格操作功能。 API 为您提供了广泛的功能,可以在 .NET 应用程序中生成和处理 Excel 文件。您可以 下载 API 的二进制文件或使用 NuGet 安装它。
PM> Install-Package Aspose.Cells
在 C# 中复制 Excel 工作表
以下是使用 C# 在 Excel 工作簿中复制工作表的步骤。
- 使用 Workbook 类加载 Excel 文件。
- 从 Workbook.Worksheets 属性中检索 WorksheetCollection 对象中的工作表。
- 使用 WorksheetCollection.AddCopy(string) 方法通过提供其名称来复制工作表。
- 使用 Workbook.Save(string) 方法保存更新的工作簿。
以下 C# 代码示例演示如何在工作簿中复制 Excel 工作表。
// 打开现有的 Excel 文件
Workbook wb = new Workbook("workbook.xlsx");
// 参考 Workbook 的工作表创建一个 WorksheetCollection 对象
WorksheetCollection sheets = wb.Worksheets;
// 将数据从工作簿中的现有工作表复制到新工作表
sheets.AddCopy("Sheet1");
// 保存 Excel 文件
wb.Save("CopyWithinWorkbook.xlsx");
C#:将 Excel 工作表从一个工作簿复制到另一个工作簿
现在,让我们看看如何将工作表从一个 Excel 工作簿复制到另一个工作簿。以下是执行此操作的步骤。
- 创建 Workbook 类的对象并加载源 Excel 文件。
- 创建 Workbook 类的另一个对象并加载目标 Excel 文件。
- 使用 destinationWorkbook.Worksheets[int].Copy(sourceWorkbook.Worksheets[int]) 方法将工作表从源工作簿复制到目标工作簿。
- 使用 Workbook.Save(string) 方法保存目标工作簿。
以下代码示例演示如何在 C# 中将工作表从一个工作簿复制到另一个工作簿。
// 开源 Excel 文件
Workbook sourceWorkbook = new Workbook("source.xlsx");
// 打开目标 Excel 文件
Workbook destinationWorkbook = new Workbook("destination.xlsx");
// 将源工作簿的第一张表复制到目标工作簿中
destinationWorkbook.Worksheets[0].Copy(sourceWorkbook.Worksheets[0]);
// 保存 Excel 文件
destinationWorkbook.Save("copy-worksheets.xlsx");
在 C# 中移动 Excel 工作表的位置
当您需要重新排列工作簿中工作表的位置时,可能会出现这种情况。您可以通过指定索引将工作表移动到所需位置来实现。以下是将 Excel 工作表从一个位置移动到另一个位置的步骤。
- 使用 Workbook 类加载 Excel 文件。
- 使用 Workbook.Worksheets 属性检索 WorksheetCollection 对象中的工作表。
- 从工作表集合访问所需的工作表到 Worksheet 对象。
- 使用 Worksheet.MoveTo(int) 方法将工作表移动到指定索引。
- 使用 Workbook.Save(string) 方法保存更新的工作簿。
以下代码示例演示如何使用 C# 将 Excel 工作表从一个位置移动到另一个位置。
// 打开现有的 Excel 文件
Workbook wb = new Workbook("workbook.xlsx");
// 参考 Workbook 的工作表创建一个 WorksheetCollection 对象
WorksheetCollection sheets = wb.Worksheets;
// 获取第一个工作表。
Worksheet worksheet = sheets[0];
// 将第一个工作表移动到工作簿中的第三个位置
worksheet.MoveTo(2);
// 保存 Excel 文件
wb.Save("move-worksheet.xlsx");
用于复制 Excel 工作表的 C# API - 获取免费许可证
您可以通过申请 临时许可 免费试用和评估 Aspose.Cells for .NET。
结论
在本文中,您学习了如何使用 C# 将 Excel 工作表复制到工作簿内或从一个工作簿复制到另一个工作簿。此外,您还了解了如何将 Excel 工作表从工作簿中的一个位置移动到另一个位置。您可以使用 documentation 探索 Aspose.Cells for .NET 的其他功能。如果您有任何疑问,请随时发布到我们的 论坛。