使用 IRONXL .NET Core Excel電子表格:使用IronXL在C#中建立專業的Excel工作表文件 喬迪·巴迪亞 更新:1月 5, 2026 下載 IronXL NuGet 下載 DLL 下載 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 分享 分享到 X(Twitter) 在領英上分享 複製連結 電子郵件文章 在 ASP.NET Core 中以程式化方式產生 Excel 試算表開啟了強大的自動化可能性 - 從財務報告和庫存追蹤到匯出資料和自動化儀表板。 在 Web 應用程式開發中,整合 .NET Core Excel 試算表生成功能可增強資料的可及性和報告功能,讓使用者能夠與複雜的資料集互動,並從中擷取有價值的洞察力。 有了IronXLfor .NET,開發人員無須安裝 Microsoft Office 或依賴 Office Interop 即可建立 Excel 檔案。此跨平台函式庫可在 Windows、Linux 和 macOS 上無縫執行,非常適合部署到 Azure 或 Docker containers 的現代資料驅動應用程式。 在 Web 應用程式中,Excel 工作表的產生與下載功能可讓使用者匯出複雜的資料表,藉由讓資料更容易存取與攜帶,大幅改善使用者體驗。 本教學將介紹如何以專業格式、公式和多種匯出選項來建立 .NET Core Excel 試算表。 無論是建立 ASP.NET Core 網路應用程式、主控台應用程式或背景服務,這些技術都適用於所有 .NET 應用程式。 到最後,使用者將擁有可生成生產就緒 Excel 檔案的工作程式碼,這些檔案可與 Visual Studio 或任何 .NET 開發環境中的現有專案無縫整合。 如何在不依附 Office 的情況下在 .NET Core 中建立 Excel 試算表? 傳統的 Microsoft Excel 自動化需要安裝 MS Office,並使用 Office Interop,無法在 Linux 或容器化環境下運作。 正如[Microsoft的文件](https://learn.microsoft.com/en-us/dotnet/csharp/advanced-topics/interop/)中所討論的,Office Interop 也引進了部署的複雜性和授權問題。IronXLfor .NET 消除了這些限制,它提供了一個純粹的 .NET 解決方案,可以原生處理 Excel 檔案,並完全支援現代的試算表功能。 本庫支援 .NET 8、.NET 9 和 .NET 10,以及早期的 .NET Core 版本。 可處理 XLSX、XLS、CSV 及其他試算表格式,無須外部依賴。 這使得它對伺服器端應用程式、微服務,以及安裝 Microsoft Office 並不實際的場景特別有價值。 透過 NuGet 套件安裝的簡易整合,意味著開發人員可以在幾分鐘內開始撰寫 Excel 檔案。 開啟 Visual Studio,然後存取 NuGet Package Manager Console 並執行下列指令: ```shell :ProductInstall ```  ```cs using IronXL; // Create a new workbook in XLSX format WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX); // Add an Excel worksheet with a custom name WorkSheet sheet = workbook.CreateWorkSheet("SalesReport"); // Set a cell value sheet["A1"].Value = "Product Sales Summary"; // Save the generated Excel file workbook.SaveAs("SalesReport.xlsx"); ``` `WorkBook.Create()` 方法初始化一個新的 Excel 工作簿,接受 `ExcelFileFormat` 參數以指定 XLSX(Excel 2007 中引入的基於 XML 的現代格式)或 XLS(傳統的二進制格式)。 由於檔案大小較小,且與現代工具相容性較佳,因此建議在大多數情況下使用 XLSX。 `CreateWorkSheet()` 方法會新增命名的工作表,Excel 資料會存放在工作表中 - 每個工作簿可以包含多個獨立的工作表,以便組織相關資料。 ### 輸出  單元格值的設定使用直覺的介面,括號符號反映 Excel 的位址系統 - `sheet["A1"]` 直接針對 A1 單元格。 此語法同時支援特定的儲存格和 [範圍](/csharp/excel/how-to/select-range/),讓任何試算表專案的大量操作都能直接進行。 詳細安裝選項,包括手動下載 DLL,請參閱 [IronXL for .NET 安裝指南](/csharp/excel/docs/)和說明文件。 Linux 開發人員也應檢閱 [Linux部署文件](/get-started/linux/),以取得特定平台的指引。 --- 新增工作表並填入資料的步驟是什麼? 真實世界中的 Excel 試算表包含跨越多個工作表的結構化資料。IronXL提供靈活的方法,無論是在資料驅動應用程式中使用手動資料輸入或自動化資料管道,都能有效率地組織資訊和填充儲存格。 ```cs using IronXL; WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet sheet = workbook.CreateWorkSheet("MonthlySales"); // Set column names as headers sheet["A1"].Value = "Month"; sheet["B1"].Value = "Revenue"; sheet["C1"].Value = "Units Sold"; // Populate Excel data using a loop (mock sales data) string[] months = { "January", "February", "March", "April", "May", "June" }; decimal[] revenue = { 45000.50m, 52000.75m, 48500.25m, 61000.00m, 58750.50m, 67200.25m }; int[] units = { 150, 175, 160, 200, 190, 220 }; for (int i = 0; i < months.Length; i++) { int row = i + 2; sheet[$"A{row}"].Value = months[i]; sheet[$"B{row}"].Value = revenue[i]; sheet[$"C{row}"].Value = units[i]; } // Set a range of cells to the same value across columns sheet["D2:D7"].Value = "Active"; workbook.SaveAs("MonthlySales.xlsx"); ``` 字串插值 (`$"A{row}"`) 可在循環中實現動態單元格定址,從任何資料來源以程式化方式直接填充行。 範圍語法 `sheet["D2:D7"]` 可同時將數值套用至多個儲存格 - 適用於狀態列、預設值或初始化資料區域。 IronXL.Excel 可自動處理資料類型轉換,將小數存為數值,將字串內容存為文字,同時為產生的 Excel 檔案保留適當的 Excel 資料類型。 對於需要整合資料庫的應用程式,IronXL 可與 Entity Framework Core、Dapper 或原始 ADO.NET 無縫搭配。 DataTable 物件中的資料可[直接匯出至工作表](/csharp/excel/how-to/export-dataset-datable/),簡化報表工作流程,並允許使用者跨系統分享資料。 建立多工作表可在單一工作簿中有邏輯地組織相關的 Excel 資料: ```cs WorkSheet summarySheet = workbook.CreateWorkSheet("Summary"); WorkSheet detailSheet = workbook.CreateWorkSheet("Details"); WorkSheet archiveSheet = workbook.CreateWorkSheet("Archive"); ``` 在IronXL文件中瞭解更多關於 [ 管理工作表](/csharp/excel/how-to/manage-worksheet/) 和 [ 寫入 Excel 檔案](/csharp/excel/how-to/write-excel-net/)的資訊。 如需閱讀現有的 Excel 檔案,請參閱 [Excel 檔案載入教學](/csharp/excel/how-to/load-spreadsheet/)。 ### 輸出 。 --- 如何套用專業的格式和樣式? 當格式正確時,原始資料就會變得有意義。 IronXL.Excel 支援背景顏色、字型、邊框和數字格式,這些重要的格式化功能可將 Excel 試算表轉換成精巧的報告,適合主管簡報或客戶交付的文件。 ```cs using IronXL; WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet sheet = workbook.CreateWorkSheet("FormattedReport"); // Create headers with styling sheet["A1"].Value = "Category"; sheet["B1"].Value = "Amount"; sheet["C1"].Value = "Date"; // Apply header formatting to the Excel sheet sheet["A1:C1"].Style.SetBackgroundColor("#2E86AB"); sheet["A1:C1"].Style.Font.Bold = true; sheet["A1:C1"].Style.Font.SetColor("#FFFFFF"); // Add sample data to specific cells sheet["A2"].Value = "Software License"; sheet["B2"].Value = 1299.99m; sheet["C2"].Value = DateTime.Now; // Format currency and date columns sheet["B2"].FormatString = "$#,##0.00"; sheet["C2"].FormatString = "yyyy-MM-dd"; // Add borders around the data range var dataRange = sheet["A1:C2"]; dataRange.Style.BottomBorder.SetColor("#000000"); dataRange.Style.BottomBorder.Type = IronXL.Styles.BorderType.Thin; workbook.SaveAs("FormattedReport.xlsx"); ``` 樣式屬性提供與 Microsoft Excel 功能相符的格式化選項。 背景顏色接受十六進位碼 (有或沒有 # 前綴),而 FormatString 則應用與 Excel 自訂格式語法相同的數字格式 - 相同的模式在兩種環境中都適用。 邊框樣式支援各種類型,包括薄、中、厚和雙重,可精確控制 Excel 工作表中的儲存格邊界。 對於具有大量資料的 Excel 試算表,`CreateFreezePane(0, 1)` 可在捲動時保持標題可見 - 這項微妙的增強功能可顯著改善大型資料集的可用性,並具有更好的試算表效能。 透過 `sheet.PrintSetup` 進行列印設定,可處理實體輸出的方向、邊緣和縮放。 在[儲存格格式化指南](/csharp/excel/how-to/cell-font-size/)和[邊界配置教學](/csharp/excel/how-to/border-alignment/)中探索其他樣式選項。 這些工具讓開發人員可以完全編輯和自訂儲存格外觀的各個層面。 --- 如何使用 Excel 公式進行計算? Excel 的計算引擎是自動化資料分析的核心功能,IronXL.Excel 提供公式的完整支援。 使用標準 Excel 語法將公式設定為字串,IronXL.Excel 會根據要求自動計算結果 - 對於報告和財務分析來說非常重要。 ```cs using IronXL; WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet sheet = workbook.CreateWorkSheet("BudgetCalculations"); // Add expense data to the Excel workbook sheet["A1"].Value = "Expense"; sheet["B1"].Value = "Amount"; sheet["A2"].Value = "Rent"; sheet["B2"].Value = 2500; sheet["A3"].Value = "Utilities"; sheet["B3"].Value = 350; sheet["A4"].Value = "Supplies"; sheet["B4"].Value = 875; sheet["A5"].Value = "Marketing"; sheet["B5"].Value = 1200; // Add formulas for calculations sheet["A7"].Value = "Total:"; sheet["B7"].Formula = "=SUM(B2:B5)"; sheet["A8"].Value = "Average:"; sheet["B8"].Formula = "=AVERAGE(B2:B5)"; sheet["A9"].Value = "Maximum:"; sheet["B9"].Formula = "=MAX(B2:B5)"; sheet["A10"].Value = "Count:"; sheet["B10"].Formula = "=COUNT(B2:B5)"; // Calculate all formulas workbook.EvaluateAll(); // Access calculated values programmatically decimal total = sheet["B7"].DecimalValue; Console.WriteLine($"Calculated total: {total}"); workbook.SaveAs("BudgetCalculations.xlsx"); ``` 公式屬性接受標準的 Excel 公式語法 - 在 Microsoft Excel 中運作的公式在此也同樣適用。 設定公式後,呼叫 `EvaluateAll()` 計算結果。 此步驟確保計算出的值可透過類型化的屬性立即使用,例如 `DecimalValue`, `IntValue`, 或 `StringValue`. 在不呼叫 `EvaluateAll()` 的情況下,公式仍可正確儲存,並在 Excel 中開啟時進行計算,但程式化存取結果需要先進行評估。 ### 輸出 。 。 IronXL 支援超過 150 個 Excel 函式,包括數學運算 (SUM、AVERAGE、ROUND)、統計函式 (COUNT、MAX、MIN、STDEV)、文字操作 (CONCATENATE、LEFT、RIGHT) 以及邏輯運算 (IF、AND、OR)。 如需完整清單,請參閱支援的公式參考。 對於公式不需要持久存在 Excel 檔案中的較簡單情境,IronXL.Excel 提供內建的彙總方法,效能優異: ```cs decimal sum = sheet["B2:B5"].Sum(); decimal avg = sheet["B2:B5"].Avg(); decimal max = sheet["B2:B5"].Max(); ``` 當計算不需要以電子試算表中可見的公式顯示時,這些方法提供了一個物件導向的 C# 原生替代方案。 請參閱 [公式編輯指南](/csharp/excel/how-to/edit-formulas/),以瞭解進階方案,包括跨工作表的儲存格引用。 請注意,IronXL 著重於資料和公式-若要製作圖表,請考慮將資料匯出至專門從事視覺化的工具,或使用用戶端圖表程式庫。 如何匯出 Excel 檔案並供下載? IronXL 支援多種匯出格式,以滿足不同的整合需求。 除了標準的 Excel 格式之外,試算表還可以匯出為 CSV 格式以進行資料交換、JSON 格式以用於網路應用程式,或 TSV 格式以兼容舊系統。 這種靈活性使 Excel 生成很容易整合到任何工作流程中。 ```cs using IronXL; WorkBook workbook = WorkBook.Load("BudgetCalculations.xlsx"); // Export to different formats - save the Excel data as needed workbook.SaveAs("output.xlsx"); // Modern Excel (Office 2007+) workbook.SaveAs("output.xls"); // Legacy Excel (97-2003) workbook.SaveAsCsv("output.csv"); // CSV for data import/export workbook.SaveAsJson("output.json"); // JSON for web APIs ``` 每種格式都有特定的使用情況。 在與 Excel 使用者分享時,XLSX 最能夠保留格式和公式。 CSV 可提供最大的相容性,以便匯入資料庫、分析工具或其他試算表應用程式。 JSON 可自然地與 JavaScript 前端和 REST API 整合。對於文件工作流程,可考慮與 PDF 生成工具整合,將 Excel 資料轉換為 PDF。 ### 輸出 。 。 對於 ASP.NET Core 網路應用程式而言,將 Excel 檔案提供為可下載的回應只需要幾行程式碼: ```cs [HttpGet("download-report")] public IActionResult DownloadReport() { WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet sheet = workbook.CreateWorkSheet("Report"); sheet["A1"].Value = "Generated Report"; sheet["A2"].Value = DateTime.Now; var stream = workbook.ToStream(); return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Report.xlsx"); } ``` `ToStream()` 方法會建立一個包含完整 Excel 檔案的 `MemoryStream` 方法,ASP.NET Core 的 `File()` 方法會以適當的 MIME 類型返回。 此模式同樣適用於 MVC 控制器、API 控制器和最小化 API。瀏覽器會以指定的檔案名稱自動觸發檔案下載,讓使用者將產生的 Excel 檔案儲存於本機。 對於高流量的應用程式,可考慮以非同步方式產生報表,並在底層資料不常變更時快取結果 - 此方法可大幅改善效能。 [格式轉換文件](/csharp/excel/how-to/convert-spreadsheet-file-types/)涵蓋其他匯出情境,包括密碼保護的檔案。 ## Excel 生成的性能和安全性注意事項 在 .NET Core 中建立產生 Excel 檔案的應用程式時,效能與安全性都是最重要的優先考量—尤其是使用者期望快速、可靠且安全的試算表解決方案。 現代的 .NET Core 試算表控件是為了提供高效能的 Excel 檔案產生而設計,即使是最複雜的 Excel 工作表,也能輕鬆建立與操作,而不需要 Microsoft Office 或 Office Interop 的開銷。 為了獲得最佳的試算表效能,.NET Core 試算表控制利用了資料虛擬化等先進技術。 這表示您的應用程式可以有效率地處理及匯出大量資料至 Excel 檔案,而不會遇到記憶體瓶頸或速度變慢的問題。 多執行緒支援可同時處理多個 Excel 檔案產生任務,進一步增強效能,確保即使是資料繁重的作業也能快速有效地完成。 在處理 Excel 檔案時,安全性同樣重要,尤其是在處理敏感或機密資料時。 透過獨立於 Microsoft Office 並避免 Office Interop,.NET Core 試算表控件可將外部漏洞的風險降至最低,並確保您的 .NET 應用程式擁有更安全的環境。 此外,內建的加密與密碼保護支援可讓您保護所產生的 Excel 檔案,確保只有授權使用者才能存取或編輯重要的工作表與資料。 為何要選擇此函式庫而非其他 .NET Excel 解決方案? .NET Excel 操作有幾個函式庫,每個函式庫都有不同的優點。 以下是IronXL作為建立和管理 Excel 檔案的解決方案的比較: ### 主要差異點:IronXL 對比其他程式庫。 |特點|IronXL|開放原始碼替代方案| | --- | --- | --- | |需要安裝 Microsoft Office|無|無| |技術支援|是 (24/5 工程團隊)|以社群為基礎| |跨平台 (NET Core)|全面支援|依程式庫而異| |公式計算引擎|150+ 功能|有限或無| |授權模式|免費試用的商業版|各種開放源碼| IronXL.Excel 在需要可靠的技術支援、全面的文件和持續更新的企業情境中表現優異。 該函式庫可優雅地處理邊緣情況—損毀的檔案、複雜的公式和大型資料集—,而開放原始碼的替代品可能會在這些情況下掙扎。 對於優先考量開發速度、生產可靠性以及複雜電子試算表需求答案的團隊而言,IronXL 的商業支援可讓他們高枕無憂。 安裝 NuGet 套件並立即開始建置。 根據 [Stack Overflow](https://stackoverflow.com/questions/tagged/excel+c%23) 上的討論,開發人員在為其 .NET Core 專案選擇 Excel 函式庫時,經常將 API 的簡易性和文件品質列為決定因素。 ## 結論 使用IronXL製作 .NET Core Excel 試算表可簡化原本複雜、依賴性高的工作。 從基本的單元格操作到公式計算和專業格式化,該資料庫為電子表格自動化提供了完整的工具包,可在任何 .NET 運行—Windows伺服器、Linux容器或雲端平台上運行。 跨平台架構可確保開發機器和生產環境的行為一致,消除 Office Interop 解決方案常見的 "在我的機器上運作 "的問題。 正如[.NET基金會的討論](https://dotnetfoundation.org/)所指出的,現代的.NET開發愈來愈以跨平台部署為目標,因此獨立於Office的函式庫對於可維護的解決方案和更好的系統相容性而言是不可或缺的。 準備開始建造了嗎? [下載 30 天免費試用版](trial-license),探索所有功能,不受限制;或 [檢視授權選項](/csharp/excel/licensing/),進行生產部署。 如需其他涵蓋進階方案的程式碼範例,例如[讀取現有 Excel 檔案](/csharp/excel/examples/read-excel/)或使用受密碼保護的工作簿,請瀏覽完整的說明文件和[API 參考](/csharp/excel/object-reference/api/)。 常見問題解答 在 .NET Core 中使用 IronXL 產生 Excel 電子表格有哪些好處? IronXL 允許開發人員以程式設計方式建立 Excel 文件,無需 Microsoft Office 或 Office Interop,並可在 Windows、Linux 和 macOS 上實現跨平台相容。這使其成為現代數據驅動型應用程式的理想選擇。 IronXL 可以在 ASP.NET Core 應用程式中使用嗎? 是的,IronXL 可以整合到 ASP.NET Core 應用程式中,從而實現強大的自動化功能,例如財務報告、庫存追蹤和資料匯出。 是否可以使用 IronXL 在 Web 應用程式中產生 Excel 電子表格? 當然。 IronXL 支援在 Web 應用程式中產生和下載 Excel 表格,透過允許使用者匯出和處理複雜的資料表來改善使用者體驗。 IronXL 是否需要安裝 Microsoft Office? 不,IronXL 不需要安裝 Microsoft Office。它獨立於 Office Interop 運行,簡化了部署和整合。 IronXL 如何增強 .NET Core 應用程式中的資料可存取性? IronXL 透過允許開發人員以程式設計方式產生 Excel 電子表格來增強資料可存取性,使用戶更容易與複雜的資料集進行互動並從中提取見解。 IronXL 能否部署在 Azure 等雲端環境中? 是的,IronXL 可以部署在 Azure 和 Docker 容器等雲端環境中,使其適用於可擴展的雲端應用程式。 IronXL 是否相容於 macOS 和 Linux? IronXL 與 macOS 和 Linux 完全相容,為 .NET 應用程式中的 Excel 電子表格產生提供跨平台解決方案。 哪些類型的應用程式可以從使用 IronXL 中受益? 需要數據驅動解決方案的應用,例如財務報告、庫存管理和自動化儀表板,可以從使用 IronXL 產生 Excel 電子表格中受益匪淺。 IronXL 如何提升 Web 應用程式的使用者體驗? IronXL 透過支援將複雜的資料表匯出到 Excel 電子表格,改善了使用者體驗,使最終使用者更容易存取和攜帶資料。 喬迪·巴迪亞 現在就和工程團隊聊天吧 軟體工程師 喬迪精通Python、C#和C++,除了在Iron Software運用這些技能外,他還從事遊戲程式設計。他參與產品測試、產品開發和研究等工作,為產品的持續改進做出了巨大貢獻。豐富的經驗讓他始終保持挑戰性和工作熱情,他表示這是他最喜歡在Iron Software工作的原因之一。喬迪在佛羅裡達州邁阿密長大,畢業於佛羅裡達大學,主修電腦科學和統計學。 相關文章 已發布 1月 21, 2026 C# CSV 庫:IronXL,用於讀取、寫入和 Excel 轉換 學習如何使用 IronXL 作為 C# CSV 函式庫。透過簡單的程式碼範例,了解如何讀取、寫入 CSV 和 Excel 格式,以及在兩者之間進行轉換。 閱讀更多 已發布 1月 21, 2026 C# 將 CSV 檔案讀取到 DataTable:完整開發者指南 學習如何使用 IronXL 在 C# 中有效地將 CSV 檔案讀取到 DataTable 中。包含 CSV 解析和資料庫導入的簡單程式碼範例。 閱讀更多 已發布 1月 21, 2026 使用 IronXL 在 VB.NET 中開啟 Excel 檔案 - 無需 Office 互通 學習如何在不使用 Microsoft Office 的情況下,使用 VB.NET 開啟和讀取 Excel 檔案。本教學使用 IronXL 編寫,並提供 XLSX/XLS 處理的範例程式碼。 閱讀更多 使用 IronXL 在 C# 中讀取 Excel 檔案的最佳方法使用 IronXL 讀取 VB.NET Excel ...
已發布 1月 21, 2026 C# CSV 庫:IronXL,用於讀取、寫入和 Excel 轉換 學習如何使用 IronXL 作為 C# CSV 函式庫。透過簡單的程式碼範例,了解如何讀取、寫入 CSV 和 Excel 格式,以及在兩者之間進行轉換。 閱讀更多
已發布 1月 21, 2026 C# 將 CSV 檔案讀取到 DataTable:完整開發者指南 學習如何使用 IronXL 在 C# 中有效地將 CSV 檔案讀取到 DataTable 中。包含 CSV 解析和資料庫導入的簡單程式碼範例。 閱讀更多
已發布 1月 21, 2026 使用 IronXL 在 VB.NET 中開啟 Excel 檔案 - 無需 Office 互通 學習如何在不使用 Microsoft Office 的情況下,使用 VB.NET 開啟和讀取 Excel 檔案。本教學使用 IronXL 編寫,並提供 XLSX/XLS 處理的範例程式碼。 閱讀更多