使用IRONXL

如何在C#中连接或合并Excel文件组合XLS

发布 2024年一月4日
分享:

介绍

微软创建了微软Excel,功能强大的电子表格程序。 这是一个常用的工具,用于组织、分析和可视化数据。 它是 Microsoft Office 套件的组件。由于其多种功能,Excel 是一个灵活的应用程序,可以被个人、专业人士、学者和企业使用。

包括金融、会计、商业分析、数据分析、研究、教育等在内的许多行业都广泛使用Excel。 由于其广泛的功能集和适应性,它是组织、评估和展示数据的首选工具,无论是在个人还是专业环境中。

IronXL是一个强大的Excel库,可用于执行各种类型的Excel操作。 在本文中,我们将学习如何在 C# 中连接或合并 Excel 文件。

如何在C#中合并Excel文件

  1. 在 Visual Studio 中创建一个新项目

  2. 将IronXL库安装到项目中

  3. 加载所有需要合并的Excel文件。

  4. 从加载的Excel工作表中提取所有工作表。

  5. 将工作表添加到新的Excel文件中。

  6. 将它们保存到一个单独的文件中。

IronXL 库

IronXL是Microsoft Interop在.NET应用程序中处理Excel文件的替代品。 IronXL 提供了一种更加简单、有效且强大的方法,可以在 .NET 环境中以编程方式操作 Excel 文件,而 Microsoft Interop 需要使用 Interop 组件与 Excel 进行通信。

使用IronXL具有以下好处:

  • 性能和资源节约: 因为IronXL不依赖于PC上安装的Excel应用程序,所以在这些方面的表现优于Microsoft Interop。
  • 可读性和简单性: 无需 Microsoft Interop 的缺点,IronXL 提供了一个更简单的 API,方便读取、写入和操作 Excel 文件。
  • 兼容性和依赖性:由于IronXL不需要在计算机上安装Microsoft Excel,因此消除了与各种Office或Excel版本的依赖性和兼容性问题。
  • 平台独立性: IronXL 在更广泛的设置和平台上提供了更大的灵活性和易于部署,而微软互操作性则更强烈地与某些 Microsoft Office 版本相关联。

    对于需要以编程方式操作 Excel 文件的 .NET 开发人员来说,IronXL 通常是更好的选择,因为它速度快、用户友好,并且减少了安装其他应用程序的需求。

    用户在选择IronXL和Microsoft Interop时,可能会受到项目细节、现有基础设施以及对每个库的熟悉程度等因素的影响。

    在选择这些选项时,请始终牢记应用程序的需求。 访问此处页码了解有关 IronXL 图书馆的更多信息。

在 Visual Studio 中创建新项目

从文件菜单中点击文件以启动Visual Studio应用程序。 单击“新建项目”,然后选择“控制台应用程序”。

如何在 C# 中并集或合并 Excel 文件 合并 XLS:图 1

选择文件位置后,在指定的文本框中输入项目名称。 接下来,如下面的示例所示,点击“Create”按钮并选择所需的.NET Framework。

如何在 C# 中并集或合并 Excel 文件 合并 XLS:图 2

Visual Studio 项目的结构将取决于所选的应用程序。 您可以使用控制台、Windows 或 Web 应用程序来构建或执行应用程序,并通过输入 program.cs 文件来添加代码。

如何在 C# 中并连或合并 Excel 文件 合并 XLS:图 3

然后可以添加库并测试代码。

安装IronXL库

安装IronXL库,因为即将推出的补丁依赖于它。 最后,完成此操作,请打开 NuGet Package Manager 控制台并键入以下命令:

Install-Package IronXL.Excel

如何在 C# 中并连或合并 Excel 文件 合并 XLS:图 4

或者,您可以使用 NuGet 包管理器查找 "IronXL" 包。 从这份与IronXL相关的所有NuGet包列表中,我们可以选择需要下载的包。

如何在 C# 中并集或合并 Excel 文件 合并 XLS:图 5

使用 IronXL 合并 Excel 文件

我们可以使用IronXL库,通过以下几行代码,将多个Excel文件或多个Excel工作表合并成一个Excel文件或工作表。

using IronXL;
using IronBarCode;
using System;
using System.Data;
string [] Filpath = { "file1.xlsx", "file2.xlsx" };
WorkBook book=null;
WorkBook newbook = null;
WorksheetsCollection sheetcollection = null;
try
{
    newbook = WorkBook.Create();
    foreach (var file in Filpath)
    {
        book=WorkBook.LoadExcel(file);
        sheetcollection = book.WorkSheets;
        foreach(var sheet in sheetcollection)
        {
            newbook.WorkSheets.Add(sheet);
        }
    }
    newbook.SaveAs("MergedBook.xls");
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
}
using IronXL;
using IronBarCode;
using System;
using System.Data;
string [] Filpath = { "file1.xlsx", "file2.xlsx" };
WorkBook book=null;
WorkBook newbook = null;
WorksheetsCollection sheetcollection = null;
try
{
    newbook = WorkBook.Create();
    foreach (var file in Filpath)
    {
        book=WorkBook.LoadExcel(file);
        sheetcollection = book.WorkSheets;
        foreach(var sheet in sheetcollection)
        {
            newbook.WorkSheets.Add(sheet);
        }
    }
    newbook.SaveAs("MergedBook.xls");
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
}
Imports IronXL
Imports IronBarCode
Imports System
Imports System.Data
Private Filpath() As String = { "file1.xlsx", "file2.xlsx" }
Private book As WorkBook=Nothing
Private newbook As WorkBook = Nothing
Private sheetcollection As WorksheetsCollection = Nothing
Try
	newbook = WorkBook.Create()
	For Each file In Filpath
		book=WorkBook.LoadExcel(file)
		sheetcollection = book.WorkSheets
		For Each sheet In sheetcollection
			newbook.WorkSheets.Add(sheet)
		Next sheet
	Next file
	newbook.SaveAs("MergedBook.xls")
Catch ex As Exception
	Console.WriteLine(ex.ToString())
End Try
VB   C#

在上面的第一步中,我们正在创建一个包含多个文件的列表。 我们正在为Excel工作簿创建两个对象,一个用于加载现有文件,另一个用于创建新的合并Excel文件。 通过使用 for-each 循环,我们将输入的 Excel 工作簿传递到先前创建的对象中。

我们正在使用 WorkBook 对象中的 LoadExcel 方法加载 Excel 文件。 加载 Excel 文件后,我们尝试使用工作表方法将多个 Excel 工作表提取到工作表集合中。

工作表集合只能通过for-each循环处理一次。合并Excel文件可以通过在工作表对象上使用Add方法轻松完成。 通过这种方式,我们可以合并多个Excel工作簿,并通过SaveAs方法将多张工作表合并保存为新的Excel文件,该方法允许我们将文件名作为参数传递。 合并后的Excel工作簿、Excel文件或Excel工作表可以在流程结束时保存。

下面是我们用来合并Excel文件的示例文件。

如何在 C# 中并集或合并 Excel 文件 合并 XLS:图 6

结果

如何在 C# 中并集或合并 Excel 文件 合并 XLS:图 7

要了解更多关于IronXL代码的信息,请查看这里.

结论

Excel最受欢迎的附加组件之一是IronXL。 它不依赖于任何额外的外部库。 由于Microsoft Excel是一个独立的程序,因此无需安装。 它通过多种渠道运作。 另一方面,要编辑 Word 文档,Interop 库需要其他库来解析文件。

对于任何使用Microsoft Excel文档的编程过程,IronXL是一个完整的解决方案。 计算、文本或数字排序、修剪、添加、查找和替换、合并和取消合并以及文件存储是一些潜在的操作。 可以生成和评估电子表格数据以及新的单元格数据类型。它能够方便地读取、写入和管理Excel数据。

IronXL 的初始费用是 $749。 或者,客户可以支付一年的会员费以获得支持和软件升级。 IronXL 收费保护未经授权的再分发。 如需试用IronXL,请点击此处。链接. 有关更具体的定价细节,请访问IronXL许可。网站. 访问此处页码了解有关 Iron Software 产品的更多详情。

< 前一页
如何在C#中不使用oledb将Excel转换为Datatable
下一步 >
如何在C#中加载Excel文件

准备开始了吗? 版本: 2024.11 刚刚发布

免费NuGet下载 总下载量: 1,111,773 查看许可证 >