使用 IRONXL 如何在 VB.NET 中將數據集轉換為 Excel Jordi Bardia 發表日期:9月 29, 2025 下載 IronXL NuGet 下載 DLL 下載 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 在 VB.NET 應用程式中,無論是產生報表、匯出資料庫查詢或是建立資料備份,將資料集轉換為 Excel 工作表檔案都是一個常見的需求。 傳統的 Office Interop 方法需要安裝 Excel 和複雜的 COM 引用,而IronXL提供了一種簡化的方法,可以獨立於 Microsoft Office 運行。 本教學課程示範如何使用 IronXL 在 VB.NET 中有效地將包含 DataTable 行的 DataSet 轉換為 Excel 文件,並提供完整的格式化選項和對多種文件格式的支援。 為什麼將資料集轉換為 Excel 格式至關重要? .NET 中的 DataSet 表示記憶體中的資料緩存,其中包含一個或多個具有行、列和關係的 DataTable。 將這些資料集轉換為 Excel 格式可以實現以下功能: *業務報告*:將資料庫查詢結果轉換為利害關係人可查看的格式化電子表格。 資料歸檔:匯出應用程式資料以進行長期儲存和分析 跨平台相容性:與可能無法存取您應用程式的使用者共享數據 增強視覺化效果**:利用 Excel 內建的圖表和分析工具 IronXL 透過提供直覺的 API 簡化了這個過程,無需在伺服器或開發機器上安裝 Excel 即可完成轉換。該程式庫支援 .NET Framework 4.6.2 及更高版本、.NET Core 以及 .NET 5 及更高版本,使其適用於現代應用程序,包括部署在 Linux 容器和雲端環境中的應用程式。 有關支援的平台的更多詳細信息,請訪問IronXL 功能頁面。 如何在VB.NET專案中開始使用IronXL? 在 VB.NET 或 .NET 程式碼專案中設定 IronXL 只需幾分鐘。 開啟 Visual Studio 並導航到您的項目,然後透過 NuGet 套件管理器安裝 IronXL。 使用套件管理器控制台,執行以下操作: Install-Package IronXL.Excel 或者,在 NuGet 套件管理器 UI 中搜尋"IronXL.Excel",然後按一下"安裝"。 該軟體包將自動下載並配置所有必要的依賴項。 您可以在IronXL 安裝指南中找到更多安裝選項。 安裝完成後,將 IronXL 命名空間新增至您的 VB.NET 檔案: Imports IronXL Imports System.Data Imports IronXL Imports System.Data VB .NET 完成這些匯入後,就可以開始將資料集轉換為 Excel 檔案了。 如何在VB.NET中將資料集轉換為Excel? 讓我們從一個實際的範例開始,該範例會建立一個包含範例資料的資料集,並將其匯出到 Excel 檔案: ' Create a sample DataSet with product information Dim dataSet As New DataSet("ProductData") ' Create a DataTable object for products, column headers Dim productsTable As New DataTable("Products") productsTable.Columns.Add("ProductID", GetType(Integer)) productsTable.Columns.Add("ProductName", GetType(String)) productsTable.Columns.Add("Price", GetType(Decimal)) productsTable.Columns.Add("InStock", GetType(Boolean)) ' Add sample data to export DataTable productsTable.Rows.Add(1, "Laptop", 999.99, True) productsTable.Rows.Add(2, "Mouse", 19.99, True) productsTable.Rows.Add(3, "Keyboard", 49.99, False) productsTable.Rows.Add(4, "Monitor", 299.99, True) productsTable.Rows.Add(5, "Headphones", 79.99, True) ' Add the DataTable table to the DataSet dataSet.Tables.Add(productsTable) ' Export DataSet to Excel using IronXL Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX) WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Save the Excel file workBook.SaveAs("ProductData.xlsx") ' Create a sample DataSet with product information Dim dataSet As New DataSet("ProductData") ' Create a DataTable object for products, column headers Dim productsTable As New DataTable("Products") productsTable.Columns.Add("ProductID", GetType(Integer)) productsTable.Columns.Add("ProductName", GetType(String)) productsTable.Columns.Add("Price", GetType(Decimal)) productsTable.Columns.Add("InStock", GetType(Boolean)) ' Add sample data to export DataTable productsTable.Rows.Add(1, "Laptop", 999.99, True) productsTable.Rows.Add(2, "Mouse", 19.99, True) productsTable.Rows.Add(3, "Keyboard", 49.99, False) productsTable.Rows.Add(4, "Monitor", 299.99, True) productsTable.Rows.Add(5, "Headphones", 79.99, True) ' Add the DataTable table to the DataSet dataSet.Tables.Add(productsTable) ' Export DataSet to Excel using IronXL Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX) WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Save the Excel file workBook.SaveAs("ProductData.xlsx") VB .NET 這段程式碼會建立一個包含產品資訊的資料集,並直接轉換為 Excel 檔案。 LoadWorkSheetsFromDataSet 方法會自動為資料集中的每個資料表建立一個工作表。 產生的 Excel 檔案包含從您的 DataTable 結構中提取的格式正確的資料。 輸出 如何在 VB.NET 中將資料集轉換為 Excel:圖 8 - Excel 輸出 您也可以編輯 Excel 檔案並將其儲存為不同的格式: ' Save as legacy Excel versions format workBook.SaveAs("ProductData.xls") ' Save as CSV (comma-separated values) workBook.SaveAsCsv("ProductData.csv") ' Save as TSV (tab-separated values) workBook.SaveAs("ProductData.tsv") ' Save as legacy Excel versions format workBook.SaveAs("ProductData.xls") ' Save as CSV (comma-separated values) workBook.SaveAsCsv("ProductData.csv") ' Save as TSV (tab-separated values) workBook.SaveAs("ProductData.tsv") VB .NET 每種格式都有其特定的用途:XLSX 檔案格式用於相容於現代 Excel,XLS 用於舊系統,CSV/TSV 用於與其他應用程式和資料庫進行通用資料交換。 了解更多關於電子表格格式轉換的資訊。 如何將資料庫資料直接匯出為Excel檔案格式? 實際應用中經常需要從 SQL 資料庫匯出資料。 以下是如何查詢資料庫並將結果匯出到 Excel 的方法: Dim connectionString As String = "Data Source=server;Initial Catalog=SampleDB;Integrated Security=True" Dim query As String = "SELECT OrderID, CustomerName, OrderDate, TotalAmount FROM Orders WHERE OrderDate >= '2024-01-01'" Dim dataSet As New DataSet() ' Populate DataSet from database Using connection As New SqlConnection(connectionString) Using adapter As New SqlDataAdapter(query, connection) adapter.Fill(dataSet, "Orders") End Using End Using ' Create Excel workbook and load data Dim workBook As WorkBook = WorkBook.Create() WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Auto-size columns for better readability Dim worksheet As WorkSheet = workBook.WorkSheets(0) For i As Integer = 0 To worksheet.Columns.Count - 1 worksheet.AutoSizeColumn(i) Next ' Save with timestamp in filename Dim fileName As String = $"OrdersExport_{DateTime.Now:yyyyMMdd_HHmmss}.xlsx" workBook.SaveAs(fileName) Dim connectionString As String = "Data Source=server;Initial Catalog=SampleDB;Integrated Security=True" Dim query As String = "SELECT OrderID, CustomerName, OrderDate, TotalAmount FROM Orders WHERE OrderDate >= '2024-01-01'" Dim dataSet As New DataSet() ' Populate DataSet from database Using connection As New SqlConnection(connectionString) Using adapter As New SqlDataAdapter(query, connection) adapter.Fill(dataSet, "Orders") End Using End Using ' Create Excel workbook and load data Dim workBook As WorkBook = WorkBook.Create() WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Auto-size columns for better readability Dim worksheet As WorkSheet = workBook.WorkSheets(0) For i As Integer = 0 To worksheet.Columns.Count - 1 worksheet.AutoSizeColumn(i) Next ' Save with timestamp in filename Dim fileName As String = $"OrdersExport_{DateTime.Now:yyyyMMdd_HHmmss}.xlsx" workBook.SaveAs(fileName) VB .NET 此範例示範了從資料庫查詢到 Excel 檔案的完整工作流程。 SqlDataAdapter 將查詢結果填入 DataSet 中,然後 IronXL 將其轉換為格式化的 Excel 檔案。自動調整列寬功能確保所有資料都清晰可見,無需手動調整列寬,從而產生專業美觀、可直接分發的匯出檔案。 對於處理更大的資料集,請參閱我們處理大型 Excel 檔案的指南。 輸入 如何在 VB.NET 中將資料集轉換為 Excel:圖 15 - 資料庫輸入 輸出 如何在 VB.NET 中將資料集轉換為 Excel:圖 10 - Excel 輸出 如何在同一個Excel檔案中處理多個資料表? 處理相關資料時,單一資料集中可能包含多個資料表。 IronXL 可以輕鬆應對這種情況: Dim dataSet As New DataSet("CompanyData") ' Create Employees table (dim dt) Dim employeesTable As New DataTable("Employees") employeesTable.Columns.Add("EmployeeID", GetType(Integer)) employeesTable.Columns.Add("Name", GetType(String)) employeesTable.Columns.Add("Department", GetType(String)) employeesTable.Rows.Add(1, "John Smith", "Sales") employeesTable.Rows.Add(2, "Jane Doe", "Marketing") ' Create Departments table Dim departmentsTable As New DataTable("Departments") departmentsTable.Columns.Add("DepartmentName", GetType(String)) departmentsTable.Columns.Add("Budget", GetType(Decimal)) departmentsTable.Rows.Add("Sales", 100000) departmentsTable.Rows.Add("Marketing", 75000) ' Add both tables to DataSet dataSet.Tables.Add(employeesTable) dataSet.Tables.Add(departmentsTable) ' Convert to Excel - each DataTable becomes a worksheet Dim workBook As WorkBook = WorkBook.Create() WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Optionally rename worksheets workBook.WorkSheets(0).Name = "Employee List" workBook.WorkSheets(1).Name = "Department Budgets" workBook.SaveAs("CompanyData.xlsx") Dim dataSet As New DataSet("CompanyData") ' Create Employees table (dim dt) Dim employeesTable As New DataTable("Employees") employeesTable.Columns.Add("EmployeeID", GetType(Integer)) employeesTable.Columns.Add("Name", GetType(String)) employeesTable.Columns.Add("Department", GetType(String)) employeesTable.Rows.Add(1, "John Smith", "Sales") employeesTable.Rows.Add(2, "Jane Doe", "Marketing") ' Create Departments table Dim departmentsTable As New DataTable("Departments") departmentsTable.Columns.Add("DepartmentName", GetType(String)) departmentsTable.Columns.Add("Budget", GetType(Decimal)) departmentsTable.Rows.Add("Sales", 100000) departmentsTable.Rows.Add("Marketing", 75000) ' Add both tables to DataSet dataSet.Tables.Add(employeesTable) dataSet.Tables.Add(departmentsTable) ' Convert to Excel - each DataTable becomes a worksheet Dim workBook As WorkBook = WorkBook.Create() WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook) ' Optionally rename worksheets workBook.WorkSheets(0).Name = "Employee List" workBook.WorkSheets(1).Name = "Department Budgets" workBook.SaveAs("CompanyData.xlsx") VB .NET 資料集中的每個資料表都會成為 Excel 檔案中的一個單獨工作表,從而保持資料的邏輯分離。 這種方法特別適用於建立需要針對不同資料類別建立單獨工作表的綜合報告,所有工作表都應位於同一個文件中。根據微軟關於資料集的文檔,這種結構反映了資料庫模式的關係特性。 輸出 如何在 VB.NET 中將資料集轉換為 Excel:圖 11 - 包含多個工作表的 Excel 輸出 - 員工列表 如何在 VB.NET 中將資料集轉換為 Excel:圖 12 - Excel 輸出 - 部門預算 如何為Excel匯出檔案新增基本格式? IronXL 會自動處理基本格式,但您也可以透過新增其他樣式來增強Excel 匯出效果: ' After loading DataSet into WorkBook Dim worksheet As WorkSheet = workBook.WorkSheets(0) ' Set header row style Dim headerRange As Range = worksheet.GetRange("A1:D1") headerRange.Style.Font.Bold = True headerRange.Style.BackgroundColor = "#4472C4" headerRange.Style.Font.Color = "#FFFFFF" ' Format currency columns For rowIndex As Integer = 1 To worksheet.RowCount - 1 worksheet($"C{rowIndex + 1}").FormatString = "$#,##0.00" Next ' Add borders to data range Dim dataRange As Range = worksheet.GetRange($"A1:D{worksheet.RowCount}") dataRange.Style.Border.TopBorder.Type = BorderType.Thin dataRange.Style.Border.BottomBorder.Type = BorderType.Thin ' After loading DataSet into WorkBook Dim worksheet As WorkSheet = workBook.WorkSheets(0) ' Set header row style Dim headerRange As Range = worksheet.GetRange("A1:D1") headerRange.Style.Font.Bold = True headerRange.Style.BackgroundColor = "#4472C4" headerRange.Style.Font.Color = "#FFFFFF" ' Format currency columns For rowIndex As Integer = 1 To worksheet.RowCount - 1 worksheet($"C{rowIndex + 1}").FormatString = "$#,##0.00" Next ' Add borders to data range Dim dataRange As Range = worksheet.GetRange($"A1:D{worksheet.RowCount}") dataRange.Style.Border.TopBorder.Type = BorderType.Thin dataRange.Style.Border.BottomBorder.Type = BorderType.Thin VB .NET 這些格式化選項可以將普通資料匯出轉換為外觀專業的電子表格。 樣式功能包括字體屬性、顏色、邊框和數位格式,可讓您建立符合組織品牌或報告標準的匯出檔案。 在 IronXL 文件中探索更多單元格樣式選項。 輸出 如何在 VB.NET 中將資料集轉換為 Excel:圖 13 - 帶有格式的 Excel 輸出 立即開始免費試用,體驗使用 IronXL 在 VB.NET 中將資料集轉換為 Excel 的便利性。 如何在 VB.NET 中將資料集轉換為 Excel:圖 14 - 許可 結論 使用 IronXL ,在 VB.NET 中將資料集轉換為 Excel變得異常簡單。 該程式庫消除了傳統互通方法的複雜性,同時提供了強大的資料匯出、格式化和多格式支援功能。 無論匯出記憶體資料或資料庫查詢結果,IronXL 都能有效率地處理轉換,無需安裝 Excel。 使用 IronXL 將資料集轉換為 Excel 檔案的主要優點包括: 無需依賴 Microsoft Office 支援多種 Excel 格式(XLSX、XLS、CSV、TSV) 從資料表自動建立工作表 支援雲端和容器部署的跨平台相容性 簡單直覺的 API,所需程式碼極少 若要探索更多功能,例如圖表建立、公式支援和進階格式設定選項,請造訪最符合您需求的IronXL 文件。 準備好提升您的資料匯出能力了嗎? 下載 IronXL ,其中包含 PDF、條碼、OCR 等庫。 常見問題解答 如何在 VB.NET 中將 DataSet 轉換為 Excel 檔案? 您可以使用 IronXL for .NET 在 VB.NET 中有效地將 DataSet 轉換為 Excel 檔案。它提供了一個直接的方法,不需要 Microsoft Office 或複雜的 COM 參照。 使用 IronXL 將 DataSets 轉換為 Excel 有哪些好處? IronXL.Excel 不需要 Microsoft Office 和複雜的 COM 參照,簡化了將 DataSets 轉換為 Excel 的過程。它為 VB.NET 開發人員提供了簡化且有效率的解決方案。 使用 IronXL 需要安裝 Microsoft Office 嗎? 不,IronXL.Excel 獨立於 Microsoft Office 運作,因此您不需要安裝 Office 即可將 DataSets 轉換為 Excel 檔案。 IronXL 是否與 VB.NET 應用程式相容? 是的,IronXL 與 VB.NET 應用程式完全相容,可輕鬆整合並用於匯出 DataSets 至 Excel。 IronXL 能處理 Excel 轉換的大型 DataSets 嗎? IronXL.Excel 的設計可有效率地處理大型 DataSets,確保順暢地轉換至 Excel 而不會產生效能問題。 使用 IronXL.Excel 將 DataSet 轉換為 Excel 的步驟為何? 轉換工作包括將您的 DataSet 載入 IronXL,然後將其儲存為 Excel 檔案。IronXL 的 API 為每個步驟提供了明確的指示和函式。 IronXL 支援匯出資料庫查詢嗎? 是的,IronXL.Excel 支援將資料庫查詢匯出至 Excel,簡化報表生成和資料分析工作。 在 VB.NET 中使用 IronXL 是否有任何先決條件? 除了擁有 VB.NET 開發環境之外,沒有特定的先決條件。IronXL 不需要額外的安裝,例如 Microsoft Office。 IronXL 如何改善 VB.NET 中的資料備份流程? IronXL.Excel 簡化資料備份,可輕鬆將 DataSets 轉換為 Excel,提供可靠且可存取的資料儲存格式。 IronXL for .NET 是否有使用指南? 是的,IronXL 專門為 VB.NET 開發人員提供詳細的文件和指南,包括將 DataSets 轉換為 Excel 等任務的逐步說明。 Jordi Bardia 立即與工程團隊聊天 軟體工程師 Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担产品测测试,产品开发和研究的责任时,Jordi 为持续的产品改进增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。 相關文章 發表日期 12月 19, 2025 如何使用 C# Interop 與 IronXL 在 Excel 中建立資料透視表 在無需 Office 依賴的情況下在 C# 中構建 Excel 樞紐分析表。IronXL 對無需 Excel Interop 的樞紐型報告創建提供了強大的數據操作功能。 閱讀更多 發表日期 12月 18, 2025 使用 IronXL 將 C# DataGridView 匯出到 Excel,並帶有列標題 學習如何在 C# 教程中使用 IronXL library 將 DataGridView 資料匯出為 Excel 同時保留列標題。分步教學。 閱讀更多 發表日期 12月 18, 2025 如何在 C# 中使用 IronXL 創建 Excel 生成報告 使用 IronXL 在 C# 中創建 Excel 報告生成。學習構建擁有格式化公式和數據庫集成的專業報告。 閱讀更多 如何在 C# 中將 CSV 文件讀取到 DataTable在 C# 中如何管理 Excel 範圍
發表日期 12月 19, 2025 如何使用 C# Interop 與 IronXL 在 Excel 中建立資料透視表 在無需 Office 依賴的情況下在 C# 中構建 Excel 樞紐分析表。IronXL 對無需 Excel Interop 的樞紐型報告創建提供了強大的數據操作功能。 閱讀更多
發表日期 12月 18, 2025 使用 IronXL 將 C# DataGridView 匯出到 Excel,並帶有列標題 學習如何在 C# 教程中使用 IronXL library 將 DataGridView 資料匯出為 Excel 同時保留列標題。分步教學。 閱讀更多
發表日期 12月 18, 2025 如何在 C# 中使用 IronXL 創建 Excel 生成報告 使用 IronXL 在 C# 中創建 Excel 報告生成。學習構建擁有格式化公式和數據庫集成的專業報告。 閱讀更多