使用IRONXL

C# 程式化地開啟 Excel 檔案(代碼示例教程)

里根普恩
里根普恩
2022年6月28日
已更新 2024年1月8日
分享:

我們都知道 Excel 試算表已經存在很長一段時間了。它主要用於計算和繪製數據圖表,非常適合用於創建財務模型、分析各種廣告活動的成本效益,以及許多其他類型的分析。

儘管這應該是一個簡單的過程,由於涉及的行數和列數,程式設計方式創建 Excel 文件可能會很困難。 許多任務可以使用 Excel 快速完成,例如選擇或排序數據。 然而,當您需要從頭開始創建新的試算表時,沒有簡單的方法來做到這一點。 以程式方式建立 XLSX 文件需要編寫許多程式碼,這很快就會變得複雜。

Excel 文件較難以程式方式創建,因為它們需要在使用前設置數據和公式。 您在試算表中儲存的不同種類的數據會顯著影響創建 Excel 文件的難易程度。如果您需要創建包含大量數據的 Excel 文件,您可能會發現創建起來比只有少量行列的文件更為複雜。 其次,試算表格式也可能使建立 Excel 檔案變得困難。 例如,假設您希望電子表格中的列始終對齊。 在那種情況下,這將使生成新電子表格比平時更為複雜,因為您需要根據表中的其他列計算每個列的位置,以及應該有多少行。

所以,我們想出了一個解決方案。 我們將展示使用IronXL C#庫創建和讀取Excel文件是多麼簡單。

IronXL: C# Excel 程式庫

IronXL 是一個 C# Excel 函式庫,可幫助您製作更強大的試算表。 使用IronXL,試算表中的行數和列數不受限制。 您可以擁有所需的任意多行和列,而無需添加計算列寬的複雜公式。

IronXL 可以創建擁有數百萬行和數千列的工作簿,這是不使用複雜計算或其他試算表軟件所無法做到的。 使用 IronXL,您的電子表格中可以擁有無限的行數和列數,讓您能在單一工作表上設計高維度的模型。 IronXL 是一個完整的庫,可以完成所有 Excel 流程。 其完整的功能將在C#中建立和讀取Excel文件。

IronXL 透過提供強大的功能簡化數據計算和分析過程,用戶可以輕鬆處理數據。 我們也不需要在我們的機器上安裝 Microsoft Office。

以下部分將描述如何使用該庫在 C# 中讀取和寫入 Excel 文件。

建立 C# .NET 專案

在 Microsoft Visual Studio 中創建一個新的 C# 控制台項目。 我正在使用 Visual Studio 2022 版本。 您可以使用任何版本,但建議使用最新版本。 在創建專案時,請選擇 .NET Framework > 3.0,因為這是推薦的。 您可以為您的專案取任何名稱。 您也可以根據需求建立一個 GUI 專案。 IronXL 支援 .NET Framework 的每種模板格式。 完成專案後,下一步將是安裝IronXL庫。

安裝 IronXL 庫

現在是時候安裝 IronXL 函式庫了。 您必須按照以下步驟進行安裝。 我們將使用 NuGet 套件管理器安裝該庫。

從主選單列中選擇工具選項。 將滑鼠懸停在NuGet 套件管理器上,從下拉選單中選擇管理解決方案的 NuGet 套件...選項。

C# 程式化開啟 Excel 文件(程式碼示例教程),圖 1:導航到 Visual Studio 中的 NuGet 套件管理器

在 Visual Studio 中導航到 NuGet 套件管理員

這將開啟 NuGet 套件管理器標籤。 轉到瀏覽標籤並搜尋IronXL。 從搜尋結果中選擇IronXL。

以 C# 程式化開啟 Excel 檔案(代碼範例教學),圖 2:在 NuGet 套件管理員中搜尋 IronXL

在 NuGet 套件管理員中搜尋 IronXL

安裝選定的庫。 您會在解決方案瀏覽器中看到 IronXL 程式庫的依賴性。

C# 程式開啟 Excel 檔案(程式碼範例教學),圖 3:IronXL 套件已新增至專案

IronXL 套件已添加到專案中

現在我們可以在專案中使用該函式庫。 讓我們移動到program.cs文件,並寫代碼以創建 Excel 文件。

創建 Excel 文件的程式碼

以下是使用IronXL C#庫程式化建立Excel檔案的程式碼。

/**
Create & Save Excel File
anchor-create-and-save-an-excel-file
**/
using IronXL;

//default file format is XLSX, we can override it using CreatingOptions
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
var sheet = workbook.CreateWorkSheet("example_sheet");
sheet ["A1"].Value = "Example";
//set value to multiple cells
sheet ["A2:A4"].Value = 5;
sheet ["A5"].Style.SetBackgroundColor("#f0f0f0");
//set style to multiple cells
sheet ["A5:A6"].Style.Font.Bold = true;
//set formula
sheet ["A6"].Value = "=SUM(A2:A4)";
if (sheet ["A6"].IntValue == sheet ["A2:A4"].IntValue)
{
    Console.WriteLine("Basic test passed");
}
workbook.SaveAs("example_workbook.xlsx");
/**
Create & Save Excel File
anchor-create-and-save-an-excel-file
**/
using IronXL;

//default file format is XLSX, we can override it using CreatingOptions
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
var sheet = workbook.CreateWorkSheet("example_sheet");
sheet ["A1"].Value = "Example";
//set value to multiple cells
sheet ["A2:A4"].Value = 5;
sheet ["A5"].Style.SetBackgroundColor("#f0f0f0");
//set style to multiple cells
sheet ["A5:A6"].Style.Font.Bold = true;
//set formula
sheet ["A6"].Value = "=SUM(A2:A4)";
if (sheet ["A6"].IntValue == sheet ["A2:A4"].IntValue)
{
    Console.WriteLine("Basic test passed");
}
workbook.SaveAs("example_workbook.xlsx");
'''
'''Create & Save Excel File
'''anchor-create-and-save-an-excel-file
'''*
Imports IronXL

'default file format is XLSX, we can override it using CreatingOptions
Private workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Private sheet = workbook.CreateWorkSheet("example_sheet")
Private sheet ("A1").Value = "Example"
'set value to multiple cells
Private sheet ("A2:A4").Value = 5
sheet ("A5").Style.SetBackgroundColor("#f0f0f0")
'set style to multiple cells
sheet ("A5:A6").Style.Font.Bold = True
'set formula
sheet ("A6").Value = "=SUM(A2:A4)"
If sheet ("A6").IntValue = sheet ("A2:A4").IntValue Then
	Console.WriteLine("Basic test passed")
End If
workbook.SaveAs("example_workbook.xlsx")
$vbLabelText   $csharpLabel

在以下程式碼中,我們在程式的頂部匯入IronXL庫。 之後,我們初始化了一個WorkBook變量,並創建了一個XLSX格式的Excel工作簿。 之後,我們使用CreateWorkSheet函數在WorkBook中創建了一個WorkSheet,並在參數中提供了工作表的名稱。 同樣地,我們可以建立多個工作表。 所以,現在我們的 Excel 工作簿和工作表已經可以使用了。

接下來,我們將資料輸入到 Excel 文件的儲存格中。 我們可以通過名稱訪問單元格,並且可以使用 "value" 屬性訪問單元格的值。 我們可以設定任何特定單元格的字體大小和樣式。 我們可以為特定的單元格或一組單元格編寫公式。 之後,我們將 Excel 檔案儲存為 "example_workbook.xlsx"。 它將被保存到我們專案的調試資料夾中。

輸出

在這裡,您可以看到所創建程式的輸出。

C# 程式化開啟 Excel 檔案(代碼範例教程),圖 4:在 Microsoft Excel 中顯示的結果文件

結果檔案顯示在 Microsoft Excel 中

結論

我們可以在 C# 中創建、讀取和修改現有的 Microsoft Excel 文件或 XLSX 文件。 IronXL 提供許多其他功能來支援 Microsoft Excel 檔案。 您可以從我們的教學頁面探索這些功能。 IronXL 是處理 Excel 的完整套件。 IronXL還提供了廣泛的功能,供與Excel WorkBook、WorkSheet和Cells層級互動,例如在常見格式之間轉換單元格數據格式化插入數學函數,甚至管理圖表。

IronXL 完全免費供開發使用。 在開發階段,您可以免費使用帶有 IronXL 水印的版本。 IronXL 還提供生產用的免費試用金鑰。 您可以免費試用30天。 IronXL 擁有合理的定價計劃。 您可以根據您的需求來選擇購買的等級。

C# 程式開啟 Excel 文件(程式碼範例教程),圖 5: IronXL 價格計劃

IronXL 定價方案

更重要的是,Iron Software 目前提供您五個軟體套件,只需支付兩個的價格。

里根普恩
軟體工程師
Regan 畢業於雷丁大學,擁有電子工程學士學位。在加入 Iron Software 之前,他的工作角色讓他專注於單一任務;而他在 Iron Software 工作中最喜歡的是他所能承擔的工作範圍,無論是增加銷售價值、技術支持、產品開發或市場營銷。他喜歡了解開發人員如何使用 Iron Software 庫,並利用這些知識不斷改進文檔和開發產品。
< 上一頁
使用C#讀取CSV檔案(程式碼範例教程)
下一個 >
在 C# 中將 DataTable 轉換為 Excel (示例代碼教程)