本文将介绍如何使用spire.xls组件合并多个excel文档到一个excel文档,以及合并一个excel文档内多张工作表的数据到一张工作表。
合并多个excel文档到一个excel文档
c#
//创建一个新的workbook对象
workbook newbook = new workbook();
newbook.version = excelversion.version2013;
//删除文档中的工作表(新创建的文档默认包含3张工作表)
newbook.worksheets.clear();
//创建一个临时的workbook,用于加载需要合并的excel文档
workbook tempbook = new workbook();
//将需要合并的excel文档名称保存到数组
string[] excelfiles = new string[] { "开发.xlsx", "财务.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);
vb.net
'创建一个新的workbook对象
dim newbook as new workbook()
newbook.version = excelversion.version2013
'删除文档中的工作表(新创建的文档默认包含3张工作表)
newbook.worksheets.clear()
'创建一个临时的workbook,用于加载需要合并的excel文档
dim tempbook as new workbook()
'将需要合并的excel文档名称保存到数组
dim excelfiles as string() = new string() {"开发.xlsx", "财务.xlsx"}
'遍历数组
for i as integer = 0 to excelfiles.length - 1
'载入excel文档
tempbook.loadfromfile(excelfiles(i))
'使用addcopy方法,将文档中的所有工作表添加到新的workbook
for each sheet as worksheet in tempbook.worksheets
newbook.worksheets.addcopy(sheet)
next
next
'保存文档
newbook.savetofile("mergefiles.xlsx", excelversion.version2013)
合并一个excel文档内多张工作表的数据到一张工作表
c#
//载入excel文档
workbook workbook = new workbook();
workbook.loadfromfile("mergefiles.xlsx");
//获取第一张工作表
worksheet sheet1 = workbook.worksheets[0];
//获取第二张工作表
worksheet sheet2 = workbook.worksheets[1];
//复制第二张工作表中所使用的区域到第一张工作表的指定区域中
sheet2.allocatedrange.copy(sheet1.range[sheet1.lastrow 1, 1]);
//删除第二张工作表
sheet2.remove();
//保存文档
workbook.savetofile("mergesheets.xlsx", excelversion.version2013);
vb.net
'载入excel文档
dim workbook as new workbook()
workbook.loadfromfile("mergefiles.xlsx")
'获取第一张工作表
dim sheet1 as worksheet = workbook.worksheets(0)
'获取第二张工作表
dim sheet2 as worksheet = workbook.worksheets(1)
'复制第二张工作表中所使用的区域到第一张工作表的指定区域中
sheet2.allocatedrange.copy(sheet1.range(sheet1.lastrow 1, 1))
'删除第二张工作表
sheet2.remove()
'保存文档
workbook.savetofile("mergesheets.xlsx", excelversion.version2013)