当前位置 : 主页 > 网络编程 > net编程 >

如何合并Excel文档

来源:互联网 收集:自由互联 发布时间:2023-09-03
Excel文档在日常生活中用处非常广泛,常用于储存或批量编辑数据等。当电脑中存在多个Excel文档时,我们可以利用编程的方法合并相同类型的文档。这一方法也有助于我们分类管理或快

Excel文档在日常生活中用处非常广泛,常用于储存或批量编辑数据等。当电脑中存在多个Excel文档时,我们可以利用编程的方法合并相同类型的文档。这一方法也有助于我们分类管理或快速查找文档。下面,我就将介绍如何使用​Free Spire.XLS for .NET​在C#/VB.NET程序中合并Excel文档。


安装

方法一,通过​​NuGet​​安装Free Spire.XLS for .NET:

    依次选择工具>NuGet包管理器>程序包管理器控制台,然后执行以下命令:

    PM> Install-Package FreeSpire.XLS             

方法二,在程序中手动引入Spire.xls.dll文件:

    将​​Free Spire.XLS for .NET​​ 下载到本地,解压并安装。安装完成后,打开 Visual Studio创建新项目,在右边的“解决方案资源管理器”中右键点击“引用”,再依次选择“添加引用”> “浏览”,找到安装路径下BIN文件夹中的dll文件,点击“确定”,将其添加引用至程序中。

将多个 Excel 工作簿合并到一个Excel 文档

  • 从 Excel 文件路径创建一个字符串数组。
  • 初始化一个 Workbook 对象以创建一个新的 Excel 工作簿,并使用 Workbook.Worksheets.Clear() 方法清除工作簿中的默认工作表。
  • 初始化另一个临时 Workbook 对象。
  • 循环遍历字符串数组,使用 Workbook.LoadFromFile() 方法将当前工作簿加载到临时 Workbook 对象中。
  • 循环遍历当前工作簿中的工作表,然后使用 Workbook.Worksheets.AddCopy() 方法将当前工作簿中的每个工作表复制到新工作簿中。
  • 使用 Workbook.SaveToFile() 方法将新工作簿保存到文件。

C#:

using Spire.Xls;

namespace MergeExcelFiles
{
class Program
{
static void Main(string[]
args)
{
//从 Excel 文件路径创建一个字符串数组
string[] inputFiles =
new string[] { "羊毛毯.xlsx", "羊绒被.xlsx", "空调被.xlsx" };

//初始化一个新的 Workbook 对象
Workbook newWorkbook =
new Workbook();
//清除默认工作表

newWorkbook.Worksheets.Clear();

//初始化另一个临时 Workbook 对象
Workbook tempWorkbook
= new Workbook();

//循环遍历字符串数组
foreach (string file
in inputFiles)
{
//加载当前工作簿
tempWorkbook.LoadFromFile(file);
//循环遍历当前工作簿中的工作表
foreach (Worksheet
sheet in tempWorkbook.Worksheets)
{
//将当前工作簿中的每个工作表复制到新工作簿中

newWorkbook.Worksheets.AddCopy(sheet, WorksheetCopyType.CopyAll);
}
}

//将新工作簿保存到文件

newWorkbook.SaveToFile("合并工作簿.xlsx",
ExcelVersion.Version2013);
}
}
}

VB.NET:

Imports Spire.Xls

Namespace MergeExcelFiles
Friend Class Program
Private Shared Sub
Main(ByVal args As String())
'从 Excel 文件路径创建一个字符串数组
Dim inputFiles = New
String() {"sample1.xlsx", "sample2.xlsx", "sample3.xlsx"}

'初始化一个新的 Workbook 对象
Dim newWorkbook As
Workbook = New Workbook()
'清除默认工作表

newWorkbook.Worksheets.Clear()

'初始化另一个临时 Workbook 对象
Dim tempWorkbook As
Workbook = New Workbook()

'循环遍历字符串数组
For Each file In
inputFiles
'加载当前工作簿
tempWorkbook.LoadFromFile(file)
'循环遍历当前工作簿中的工作表
For Each sheet As
Worksheet In tempWorkbook.Worksheets
'将当前工作簿中的每个工作表复制到新工作簿中

newWorkbook.Worksheets.AddCopy(sheet, WorksheetCopyType.CopyAll)
Next
Next

'将新工作簿保存到文件

newWorkbook.SaveToFile("result1.xlsx",
ExcelVersion.Version2013)
End Sub
End Class
End Namespace

如何合并Excel文档_VB.NET

将多个 Excel 工作表合并为一张工作表

  • 使用 Workbook.LoadFromFile() 方法初始化 Workbook 对象并加载 Excel 文件。
  • 使用 Workbook.Worksheets[sheetIndex] 属性获取需要合并的两个工作表。请注意,工作表索引是从零开始的。
  • 使用 Worksheet.AllocatedRange 属性获取第二个工作表的使用范围。
  • 使用 Worksheet.Range[rowIndex, columnIndex] 属性在第一个工作表中指定目标范围。请注意,行和列的索引是从 1 开始的。
  • 使用 CellRange.Copy(destRange) 方法将第二个工作表的使用范围复制到第一个工作表中的目标范围。
  • 使用 XlsWorksheet.Remove() 方法删除第二个工作表。
  • 使用 Workbook.SaveToFile() 方法保存结果文件。

C#:

using Spire.Xls;

namespace MergeExcelWorksheets
{

class Program

{

static void Main(string[] args)

{
//创建一个 Workbook 对象
Workbook workbook = new Workbook();
//加载Excel文档
workbook.LoadFromFile("sample.xlsx");

//获取第一个工作表
Worksheet sheet1 =
workbook.Worksheets[0];
//获取第二个工作表
Worksheet sheet2 =
workbook.Worksheets[1];

//获取第二个工作表的使用范围
CellRange sourceRange =
sheet2.AllocatedRange;
//在第一个工作表中指定目标范围
CellRange destRange =
sheet1.Range[sheet1.LastRow + 1, 1];

//将第二个工作表的使用范围复制到第一个工作表中的目标范围
sourceRange.Copy(destRange);

//删除第二个工作表
sheet2.Remove();

//保存结果文件
workbook.SaveToFile("result2.xlsx",
ExcelVersion.Version2013);

}

}
}

VB.NET:

Imports Spire.Xls

Namespace MergeExcelWorksheets

Friend Class Program

Private Shared Sub Main(ByVal args As String())
'创建一个 Workbook 对象
Dim workbook As Workbook = New
Workbook()
'加载Excel文档
workbook.LoadFromFile("sample.xlsx")

'获取第一个工作表
Dim sheet1 As Worksheet =
workbook.Worksheets(0)
'获取第二个工作表
Dim sheet2 As Worksheet =
workbook.Worksheets(1)

'获取第二个工作表的使用范围
Dim sourceRange As CellRange =
sheet2.AllocatedRange
'在第一个工作表中指定目标范围
Dim destRange As CellRange =
sheet1.Range(sheet1.LastRow + 1, 1)

'将第二个工作表的使用范围复制到第一个工作表中的目标范围
sourceRange.Copy(destRange)

'删除第二个工作表
sheet2.Remove()

'保存结果文件
workbook.SaveToFile("result2.xlsx",
ExcelVersion.Version2013)

End Sub

End Class
End Namespace

如何合并Excel文档_Excel_02

【本文来源:韩国服务器 http://www.558idc.com/kt.html欢迎留下您的宝贵建议】
上一篇:ZK的zoo.cfg文件和节点属性说明
下一篇:没有了
网友评论