跳至頁尾內容
使用 IRONXL

C# 程式化開啟 Excel 檔案(程式碼範例教學)

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

雖然建立 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 透過為用戶提供強大的功能,簡化了數位處理和數據分析流程,使用戶能夠輕鬆處理數據。 我們也不需要在我們的電腦上安裝微軟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 檔案的程式碼。

using IronXL;

// Create a new Excel workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

// Create a new worksheet named "example_sheet"
var sheet = workbook.CreateWorkSheet("example_sheet");

// Set value of a single cell
sheet["A1"].Value = "Example";

// Set value to multiple cells in a range
sheet["A2:A4"].Value = 5;

// Change background color of a cell
sheet["A5"].Style.SetBackgroundColor("#f0f0f0");

// Set style (bold font) to multiple cells in a range
sheet["A5:A6"].Style.Font.Bold = true;

// Set formula for cell A6
sheet["A6"].Value = "=SUM(A2:A4)";

// Verify if the value in A6 is the sum of the range A2:A4
if (sheet["A6"].IntValue == sheet["A2:A4"].IntValue)
{
    Console.WriteLine("Basic test passed");
}

// Save the workbook as "example_workbook.xlsx"
workbook.SaveAs("example_workbook.xlsx");
using IronXL;

// Create a new Excel workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

// Create a new worksheet named "example_sheet"
var sheet = workbook.CreateWorkSheet("example_sheet");

// Set value of a single cell
sheet["A1"].Value = "Example";

// Set value to multiple cells in a range
sheet["A2:A4"].Value = 5;

// Change background color of a cell
sheet["A5"].Style.SetBackgroundColor("#f0f0f0");

// Set style (bold font) to multiple cells in a range
sheet["A5:A6"].Style.Font.Bold = true;

// Set formula for cell A6
sheet["A6"].Value = "=SUM(A2:A4)";

// Verify if the value in A6 is the sum of the range A2:A4
if (sheet["A6"].IntValue == sheet["A2:A4"].IntValue)
{
    Console.WriteLine("Basic test passed");
}

// Save the workbook as "example_workbook.xlsx"
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 工作簿、工作表和儲存格層級進行交互,例如在常用格式之間進行轉換儲存格資料格式設定插入數學函數,甚至管理圖表。

IronXL 完全免費用於開發。 在開發階段,您可以免費使用它,但需要添加 IronXL 浮水印。 IronXL 還提供生產環境的免費試用金鑰,讓您可以完全免費試用 30 天。 IronXL 提供價格合理的套餐方案,您可以根據自己的需求選擇合適的等級。

! C# 以程式設計方式開啟 Excel 檔案(程式碼範例教學),圖 5:IronXL 定價方案 IronXL定價方案

更重要的是——Iron Software 目前以兩套軟體的價格為您提供五套軟體。

常見問題解答

如何使用 C# 以程式設計方式開啟 Excel 檔案?

要在 C# 中以程式設計方式開啟 Excel 文件,可以使用 IronXL 庫。首先,透過 Visual Studio 中的 NuGet 套件管理器安裝 IronXL。然後,使用WorkBook類別即可開啟和操作 Excel 文件,而無需安裝 Microsoft Office。

使用 IronXL 進行 Excel 檔案處理有哪些好處?

IronXL 透過提供強大的 Excel 檔案讀取、建立和修改功能,簡化了 C# 中的 Excel 檔案操作。它支援大型資料集,並提供格式化、公式計算和匯出為不同格式等功能。

我可以使用 C# 建立包含大型資料集的 Excel 檔案嗎?

是的,IronXL 可讓您建立包含數百萬行和數千列的 Excel 文件,這非常適合以程式設計方式處理大型資料集和高維模型。

在 C# 專案中設定 IronXL 需要遵循哪些步驟?

若要在 C# 專案中安裝 IronXL,請開啟 Visual Studio,依序選擇“工具”>“NuGet 套件管理員”>“管理解決方案的 NuGet 套件”,搜尋 IronXL 並安裝。這樣即可將該庫整合到您的專案中,用於 Excel 文件操作。

如何使用 IronXL 以程式設計方式格式化 Excel 儲存格?

使用 IronXL,您可以透過設定值、樣式和公式,以程式設計方式格式化 Excel 儲存格。您可以調整背景顏色、套用不同的字體樣式,並直接在 C# 程式碼中使用 Excel 公式。

在 C# 中使用 Excel 檔案是否需要 Microsoft Office?

不,IronXL 不需要 Microsoft Office 即可在 C# 中處理 Excel 檔案。它可以獨立運行,無需其他軟體即可建立、讀取和編輯 Excel 檔案。

如何使用 C# 將 Excel 檔案轉換為其他格式?

IronXL 允許您將 Excel 檔案轉換為其他格式,例如 CSV。它利用其導出功能,實現了不同電子表格文件類型之間的無縫轉換。

IronXL有哪些授權許可選項?

IronXL 提供帶浮水印的免費開發試用版。對於生產環境使用,我們提供 30 天免費試用金鑰,以及多種價格方案以滿足不同使用者的需求。

IronXL 與哪些 .NET 版本相容?

IronXL 支援多個 .NET Framework 版本,包括 .NET Framework 3.0 及更高版本。為了獲得最佳相容性和效能,建議使用最新版本的 Visual Studio。

喬迪·巴迪亞
軟體工程師
喬迪精通Python、C#和C++,除了在Iron Software運用這些技能外,他還從事遊戲程式設計。他參與產品測試、產品開發和研究等工作,為產品的持續改進做出了巨大貢獻。豐富的經驗讓他始終保持挑戰性和工作熱情,他表示這是他最喜歡在Iron Software工作的原因之一。喬迪在佛羅裡達州邁阿密長大,畢業於佛羅裡達大學,主修電腦科學和統計學。