跳過到頁腳內容
使用 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通過提供強大的功能來簡化C#中的Excel文件操作,包括讀取、創建和修改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在C#中處理Excel文件不需要Microsoft Office。它單獨操作,允許您創建、讀取和編輯Excel文件而不需要其他軟件。

我如何使用C#將Excel文件轉換為其他格式?

IronXL允許您將Excel文件轉換為其他格式,如CSV。這是通過其匯出功能實現的,允許不同試算表文件類型之間的無縫轉換。

IronXL有哪些授權選項可用?

IronXL為開發提供帶有浮水印的免費試用版。對於生產用途,提供免費30天試用鍵,還有不同的定價計劃以滿足不同用戶的需求。

哪些.NET版本與IronXL兼容?

IronXL支持多個.NET框架版本,包括.NET Framework 3.0及以上版本。建議使用最新版本的Visual Studio以獲得最佳兼容性和性能。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me