使用 IRONXL 如何在 C# 中合併或合併 Excel 文件 Combine XLS Jordi Bardia 更新日期:6月 22, 2025 Download IronXL NuGet 下載 DLL 下載 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 微軟創建了Microsoft Excel,一個功能強大的電子表格程式。 它是一個常用的工具,用於組織、分析和可視化數據。 它是Microsoft Office套件的一個組件。由於其眾多功能,Excel是一個靈活的應用程式,可以被個人、專業人士、學者和企業使用。 許多行業,包括財務、會計、業務分析、數據分析、研究、教育等,都廣泛使用Excel。 由於其廣泛的功能集和適應性,它是一個在個人和專業環境中組織、評估和展示數據的首選工具。 IronXL是一個強大的Excel庫,可以用來執行各種Excel操作。 在本文中,我們將學習如何在C#中連接或合併Excel文件。 如何在C#中合併Excel文件 在Visual Studio中創建一個新專案 將IronXL庫安裝到專案中 加載所有需要合併的Excel文件 從加載的Excel文件中提取所有工作表 將這些工作表添加到新的Excel文件中 將它們保存到一個單獨的文件中 IronXL 庫 IronXL是處理.NET應用程式中Excel文件時,Microsoft Interop的替代者。 雖然IronXL提供了一種更簡單、高效且強大的方法來在.NET環境中程式化地操作Excel文件,而Microsoft Interop需要使用Interop元件來與Excel通信。 使用IronXL有以下優勢: 性能及資源經濟: IronXL的性能更好,因為它不依賴於安裝在電腦上的Excel應用程式。 可讀性及簡單性: IronXL提供了一個更簡單的API,使得讀取、寫入和操作Excel文件變得更容易,不需要面對Microsoft Interop的複雜性。 相容性及依賴性: 由於IronXL不需要安裝Microsoft Excel,因此消除了與不同Office或Excel版本的相容性和依賴性問題。 平台獨立性: IronXL提供了更大的靈活性和部屬的簡易性,適用於不同的環境和平台,而Microsoft Interop則更接近於特定Microsoft Office版本。 對於需要程式化處理Excel文件的.NET開發者來說,IronXL通常是一個更好的選擇,因為它的性能、用戶友好性及減少對其他應用程式的依賴。 在選擇IronXL和Microsoft Interop之間,可以由專案的具體需求、現有的基础設施及開發人員對各個庫的熟悉程度來影響。 在做出這一選擇時,始終要考慮應用程式的需求。訪問這個頁面以了解有關IronXL庫的更多信息。 在 Visual Studio 中創建新專案 要啟動Visual Studio應用程式,從菜單中點擊“文件”,然後“新建專案”,選擇“控制台應用程式”。 輸入專案名稱和文件位置。 點擊“創建”按鈕,然後選擇所需的.NET框架,如下所示。 專案的結構將取決於所選的應用程式類型。 使用控制台、Windows或Web應用程式來構建或執行應用程式,並通過進入Program.cs文件來添加代碼。 然後可以添加庫並測試代碼。 安裝 IronXL 庫 要安裝IronXL庫,打開NuGet包管理器控制台並輸入以下命令: Install-Package IronXL.Excel 或者,使用NuGet包管理器搜索“IronXL”並從相關包列表中下載。 使用IronXL合併Excel文件 使用IronXL,我們可以使用以下代碼將多個Excel文件或工作表合併為一個Excel文件或工作表: using IronXL; using System; class Program { static void Main(string[] args) { // Array of file paths for the Excel files to be merged string[] filePaths = { "file1.xlsx", "file2.xlsx" }; // Create a new workbook to add sheets from the existing files WorkBook newWorkBook = WorkBook.Create(); try { foreach (var filePath in filePaths) { // Load the existing Excel file into a workbook WorkBook existingWorkbook = WorkBook.LoadExcel(filePath); // Retrieve the sheets from the loaded workbook WorksheetsCollection sheetCollection = existingWorkbook.WorkSheets; // Add each sheet from the existing workbook to the new workbook foreach (var sheet in sheetCollection) { newWorkBook.WorkSheets.Add(sheet); } } // Save the new workbook with a merged sheet collection newWorkBook.SaveAs("MergedBook.xls"); } catch (Exception ex) { // Output any exceptions encountered during the merging process Console.WriteLine(ex.ToString()); } } } using IronXL; using System; class Program { static void Main(string[] args) { // Array of file paths for the Excel files to be merged string[] filePaths = { "file1.xlsx", "file2.xlsx" }; // Create a new workbook to add sheets from the existing files WorkBook newWorkBook = WorkBook.Create(); try { foreach (var filePath in filePaths) { // Load the existing Excel file into a workbook WorkBook existingWorkbook = WorkBook.LoadExcel(filePath); // Retrieve the sheets from the loaded workbook WorksheetsCollection sheetCollection = existingWorkbook.WorkSheets; // Add each sheet from the existing workbook to the new workbook foreach (var sheet in sheetCollection) { newWorkBook.WorkSheets.Add(sheet); } } // Save the new workbook with a merged sheet collection newWorkBook.SaveAs("MergedBook.xls"); } catch (Exception ex) { // Output any exceptions encountered during the merging process Console.WriteLine(ex.ToString()); } } } Imports IronXL Imports System Friend Class Program Shared Sub Main(ByVal args() As String) ' Array of file paths for the Excel files to be merged Dim filePaths() As String = { "file1.xlsx", "file2.xlsx" } ' Create a new workbook to add sheets from the existing files Dim newWorkBook As WorkBook = WorkBook.Create() Try For Each filePath In filePaths ' Load the existing Excel file into a workbook Dim existingWorkbook As WorkBook = WorkBook.LoadExcel(filePath) ' Retrieve the sheets from the loaded workbook Dim sheetCollection As WorksheetsCollection = existingWorkbook.WorkSheets ' Add each sheet from the existing workbook to the new workbook For Each sheet In sheetCollection newWorkBook.WorkSheets.Add(sheet) Next sheet Next filePath ' Save the new workbook with a merged sheet collection newWorkBook.SaveAs("MergedBook.xls") Catch ex As Exception ' Output any exceptions encountered during the merging process Console.WriteLine(ex.ToString()) End Try End Sub End Class $vbLabelText $csharpLabel 說明: 文件路徑:使用一個數組來存儲所有要合併的Excel文件的文件路徑。 工作簿創建:使用WorkBook.Create()創建一個新的Excel工作簿,以存儲所有合併的工作表。 文件加載:迭代文件路徑,使用WorkBook.LoadExcel(filePath)將每個Excel文件加載到WorkBook對象中。 工作表收集:從加載的每本工作簿中檢索所有工作表。 工作表添加:使用Add方法將現有文件中的每個工作表添加到新的工作簿中。 文件保存:將新的工作簿保存為“MergedBook.xls”,從而完成合併過程。 以下是用於合併Excel文件的示例輸入文件。 合併結果文件: 有關IronXL的更多信息,請訪問此頁面。 結論 IronXL是一個流行的Excel附加元件,因為它獨立於任何其他外部庫運行。 由於Microsoft Excel是自包含的,因此不需要單獨安裝它,並且可以在沒有其他依賴的情況下執行任務。 這與需解析Word文檔文件其他庫的Interop庫形成對比。 IronXL提供了處理Microsoft Excel文檔的新方法。 它允許像計算、排序、修剪、查找和替換、文件存儲等操作。 它能高效地讀取、寫入和管理Excel數據。 IronXL的初始成本是一個LiteLicense。 或者,客戶可以選擇一年的會員費來獲得支持和軟件升級。 付費計畫還提供防止未經授權的重新分發的保護。 要試用IronXL的免費試用版,點擊此連結。 有關定價的詳細信息,請訪問IronXL授權網站。 有關Iron Software產品的更多信息,請訪問此頁面。 常見問題解答 如何使用C#將多個Excel文件合併為一個? 您可以使用IronXL通過加載每個Excel文件、提取工作表並將它們添加到新工作簿中來將多個Excel文件合併為一個。合併所有來自不同文件的工作表後,將新工作簿保存為合併的Excel文件。 IronXL在合併Excel文件方面比Microsoft Interop有什麼優勢? IronXL比Microsoft Interop好,因為它獨立於Microsoft Excel的安裝運行,提供更好的性能、跨平台部署的方便性,以及一個簡單明瞭的API供Excel文件操作使用。 如何在 Visual Studio 專案中安裝 IronXL? 要在Visual Studio項目中安裝IronXL,使用NuGet包管理器控制台的命令Install-Package IronXL或在NuGet包管理器中搜索“IronXL”並從列表中下載。 是否可以在沒有安裝Microsoft Excel的情況下用C#操作Excel文件? 是的,有了IronXL,您可以在沒有安裝Microsoft Excel的情況下用C#操作Excel文件,因為IronXL不依賴於Excel進行其操作。 使用IronXL合併Excel文件的主要步驟是什麼? 使用IronXL合併Excel文件的主要步驟包括創建新的工作簿、加載現有的Excel文件、從這些文件中提取工作表、將工作表添加到新的工作簿中,並保存合併的工作簿。 如何在Visual Studio中啟動一個Excel文件操作項目? 要在Visual Studio中啟動一個Excel文件操作項目,創建新的“控制台應用程序”項目,選擇“文件”,然後“新建項目”,選擇適合您要求的.NET Framework。 IronXL在傳統Excel操作方法方面有什麼優勢? IronXL提供的優勢包括不需要Excel安裝、更好的性能、資源經濟、簡單和直觀的API,以及平台獨立性,使其非常適合現代.NET應用程序。 IronXL如何處理來自不同版本的Excel文件合併問題? IronXL無縫處理來自不同版本的Excel文件的合併,因為它被設計為獨立於特定的Excel或Office版本運行,確保兼容性和易用性。 Jordi Bardia 立即與工程團隊聊天 軟體工程師 Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担产品测测试,产品开发和研究的责任时,Jordi 为持续的产品改进增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。 相關文章 發表日期 10月 27, 2025 如何在 C# 中創建 Excel 樞紐分析表 學習使用 C# Interop 和 IronXL 創建 Excel 中的樞紐分析表,這是一個清晰的分步指南。 閱讀更多 發表日期 10月 27, 2025 如何在 C# 中將 DataGridView 匯出為 Excel 並保留列標題 學習如何在 C# 教程中使用 IronXL library 將 DataGridView 資料匯出為 Excel 同時保留列標題。分步教學。 閱讀更多 發表日期 10月 27, 2025 如何使用 IronXL 的 .NET Core CSV 讀取器 學習使用 IronXL 作為 .NET Core CSV 讀取器的有效方法,提供實用範例。 閱讀更多 如何在 C# 中不使用 oledb 將 Excel 轉換為 DataTable如何在 C# 中載入 Excel 文件
發表日期 10月 27, 2025 如何在 C# 中將 DataGridView 匯出為 Excel 並保留列標題 學習如何在 C# 教程中使用 IronXL library 將 DataGridView 資料匯出為 Excel 同時保留列標題。分步教學。 閱讀更多