C# Excel文件合并

我们日常合并Excel的方式通常分为以下两种:

  • 合并多个Excel文件到一个文件
  • 合并多个Excel文件到一个工作表

这篇文章将介绍如何使用C#和.NET Excel组件Spire.XLS通过以上两种方式合并Excel文件。

合并多个Excel文件到一个文件

//创建一个新的workbook对象
Workbook newbook = new Workbook();
newbook.Version = ExcelVersion.Version2013;

//删除文档中的工作表(新创建的文档默认包含3张工作表)
newbook.Worksheets.Clear();

//创建一个临时的workbook,用于加载需要合并的Excel文档
Workbook tempbook = new Workbook();

//将需要合并的Excel文档名称保存到数组
string[] excelFiles = new string[] { "1.xlsx", "2.xlsx"};

//遍历数组
for (int i = 0; i < excelFiles.Length; i++)
{
    //载入Excel文档
    tempbook.LoadFromFile(excelFiles[i]);

    //使用AddCopy方法,将文档中的所有工作表添加到新的workbook
    foreach (Worksheet sheet in tempbook.Worksheets)
    {
        newbook.Worksheets.AddCopy(sheet);
    }
}

//保存文档
newbook.SaveToFile("MergeFiles.xlsx", ExcelVersion.Version2013);

合并多个Excel文件到一个工作表

string[] excelFiles = new string[] { "1.xlsx", "2.xlsx", "3.xlsx" };

Workbook workbook1 = new Workbook();
//加载第一个Excel文件
workbook1.LoadFromFile(excelFiles[0]);

//加载第二个Excel文件
Workbook workbook2 = new Workbook();
workbook2.LoadFromFile(excelFiles[1]);

//加载第三个Excel文件
Workbook workbook3 = new Workbook();
workbook3.LoadFromFile(excelFiles[2]);

//获取第一个文件的第一张工作表
Worksheet sheet1 = workbook1.Worksheets[0];

//将第二和第三个Excel文件的工作表通过datatable插入到第一个文件的第一张工作表中
Worksheet sheet2 = workbook2.Worksheets[0];
DataTable dataTable1 = sheet2.ExportDataTable();

Worksheet sheet3 = workbook3.Worksheets[0];
DataTable dataTable2 = sheet3.ExportDataTable();

sheet1.InsertDataTable(dataTable1, true, sheet1.LastRow + 1, 1);
sheet1.InsertDataTable(dataTable2, true, sheet1.LastRow + 1, 1);

//保存文件
workbook1.SaveToFile("Merged.xlsx", ExcelVersion.Version2013);

 

 

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值