跳過到頁腳內容
使用 IRONXL

如何在 C# 中新建 Excel 工作簿

Microsoft Excel 是跨各行各業中最通用的數據操作和分析工具之一。 在許多軟體專案中,常常需要以程式的方式與 Excel 文件互動。 這可能涉及諸如報告生成、管理數據匯入或匯出,或者自動化特定過程等任務。

在 C# 程式設計語言生態系統中,IronXL 脫穎而出,是用於 Excel 文件操作的強大庫。 無論您是一名開發人員正在開發網頁應用程式、桌面軟體,或是任何其他 C# 專案,IronXL 提供了一個易於使用的介面,讓您無縫地操作 Excel 文件。

如何在 C# 中建立新的 Excel 活頁簿

在本教程中,我們將學習如何使用 C# 中的 IronXL 創建新活頁簿的過程。 我們將逐步講解必要步驟,從設置開發環境到編寫生成新 Excel 活頁簿的代碼。

到本教程結束時,您將對如何利用 IronXL 程式化地創建 Excel 活頁簿有透徹理解,使您能夠輕鬆將 Excel 功能整合到您的 C# 應用中。 讓我們開始吧!

什麼是 IronXL?

IronXL 是一個多功能的 C# 庫,允許您操作 Excel 文件,而不需要 Microsoft Office Excel Interop 或任何 Excel 應用程式。 It lets you easily read, create, and modify workbooks, format cells, add formulas, and work with both modern and older Excel file formats.

您可以驗證數據,插入圖像,應用條件格式,並創建圖表,而不需要 Microsoft Office。開發人員可以通過使用 IronXL 輕鬆建立 Excel 解決方案,實現財務報告、數據儀表板和庫存管理等任務。

讓我們開始在 C# 中創建一個 Excel 文件。

步驟 1: 創建一個新的 C# 專案

打開 Visual Studio 並創建一個新的 C# 控制台應用程式專案。 根據您的偏好命名它。 您還可以創建其他類型的專案,例如 ASP.NET MVC、Blazor、MAUI、WEB Forms、Windows Forms、WEB API 等。此代碼適用於所有專案類型。我正在創建一個控制台應用專案以簡化過程並與所有專案類型保持相關。

步驟 2: 安裝 IronXL NuGet 套件

要在您的 C# 專案中安裝 IronXL 套件,您可以使用以下任一方式:

  1. 要安裝 IronXL,右鍵單擊解決方案資源管理器中的專案,選擇"管理 NuGet 包",搜索 IronXL,然後繼續安裝。

如何在 C# 中創建新的 Excel 活頁簿:圖 1 - 使用解決方案的 NuGet 套件管理器安裝 IronXL,通過在搜索欄中搜索 IronXL,然後選擇專案並單擊安裝按鈕。

  1. 或者,您可以通過套件管理器控制台使用以下命令安裝 IronXL:
Install-Package IronXL.Excel

該命令將下載、安裝並將程序集引用添加到我們的專案中。 等待套件下載並安裝。 一旦安裝完成,您可以在您的專案中開始使用 IronXL 以程式化方式操作 Excel 文件。

如何在 C# 中創建新的 Excel 活頁簿:圖 2 - 使用套件管理器控制台命令安裝 IronXL:Install-Package IronXL.Excel

步驟 3: 引入必要的命名空間

在您的 C# 文件頂部添加以下命名空間:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

步驟 4: 創建新的 Excel 文件

現在,我們編寫代碼來創建 Excel 文件:

internal class Program
{
    static void Main(string[] args)
    {
        // Create a new workbook in the XLSX format
        WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
        workBook.Metadata.Author = "Mr. Author"; // Set the author (optional)

        // Add a blank worksheet named "Sheet1"
        WorkSheet workSheet = workBook.CreateWorkSheet("Sheet1");

        // Add data to the new worksheet
        workSheet["A1"].Value = "Developer Name";
        workSheet["A2"].Value = "John Grahm";
        workSheet["A3"].Value = "David Smith";
        workSheet["A4"].Value = "Rishi Kelkar";

        // Save the Excel file as "Developers.xlsx"
        workBook.SaveAs("Developers.xlsx");
    }
}
internal class Program
{
    static void Main(string[] args)
    {
        // Create a new workbook in the XLSX format
        WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
        workBook.Metadata.Author = "Mr. Author"; // Set the author (optional)

        // Add a blank worksheet named "Sheet1"
        WorkSheet workSheet = workBook.CreateWorkSheet("Sheet1");

        // Add data to the new worksheet
        workSheet["A1"].Value = "Developer Name";
        workSheet["A2"].Value = "John Grahm";
        workSheet["A3"].Value = "David Smith";
        workSheet["A4"].Value = "Rishi Kelkar";

        // Save the Excel file as "Developers.xlsx"
        workBook.SaveAs("Developers.xlsx");
    }
}
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create a new workbook in the XLSX format
		Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
		workBook.Metadata.Author = "Mr. Author" ' Set the author (optional)

		' Add a blank worksheet named "Sheet1"
		Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")

		' Add data to the new worksheet
		workSheet("A1").Value = "Developer Name"
		workSheet("A2").Value = "John Grahm"
		workSheet("A3").Value = "David Smith"
		workSheet("A4").Value = "Rishi Kelkar"

		' Save the Excel file as "Developers.xlsx"
		workBook.SaveAs("Developers.xlsx")
	End Sub
End Class
$vbLabelText   $csharpLabel

上面的代碼展示了如何使用 C# 中的 IronXL 以程式化方式創建 Excel 文件。 它首先創建一個新的 Excel 活頁簿(Excel 文件的新實例),以 XLSX 格式設置作者元數據,使用 CreateWorkSheet() 方法添加一個名為 "Sheet1" 的空白 Excel 工作表,在單元格 A1 到 A4 填入數據,最後將活頁簿保存為 "Developers.xlsx"。

IronXL 提供了一系列功能來操作 Excel 文件,包括創建、操作和以多種格式(如 XLSX、CSV、TSV、JSON、XML 和 HTML)保存文件。

輸出為:

如何在 C# 中創建新的 Excel 活頁簿:圖 3 - 輸出:Developers.xlsx

步驟 5: 格式化和設計 Excel 文件

IronXL 允許您格式化單元格,應用字體樣式,設置背景顏色和調整對齊方式。 您可以通過自訂單元格外觀來創建專業外觀的電子表格。

// Set style of heading for cell A1
workSheet["A1"].Style.BackgroundColor = "#FFFF66"; // Light yellow background
workSheet["A1"].Style.Font.Bold = true; // Bold font

// Set border style for a specific range (A1:A4)
var range = workSheet["A1:A4"];
range.Style.BottomBorder.Type = BorderType.Medium; // Medium bottom border
range.Style.LeftBorder.Type = BorderType.Medium; // Medium left border
range.Style.RightBorder.Type = BorderType.Medium; // Medium right border
range.Style.TopBorder.Type = BorderType.Medium; // Medium top border
// Set style of heading for cell A1
workSheet["A1"].Style.BackgroundColor = "#FFFF66"; // Light yellow background
workSheet["A1"].Style.Font.Bold = true; // Bold font

// Set border style for a specific range (A1:A4)
var range = workSheet["A1:A4"];
range.Style.BottomBorder.Type = BorderType.Medium; // Medium bottom border
range.Style.LeftBorder.Type = BorderType.Medium; // Medium left border
range.Style.RightBorder.Type = BorderType.Medium; // Medium right border
range.Style.TopBorder.Type = BorderType.Medium; // Medium top border
' Set style of heading for cell A1
workSheet("A1").Style.BackgroundColor = "#FFFF66" ' Light yellow background
workSheet("A1").Style.Font.Bold = True ' Bold font

' Set border style for a specific range (A1:A4)
Dim range = workSheet("A1:A4")
range.Style.BottomBorder.Type = BorderType.Medium ' Medium bottom border
range.Style.LeftBorder.Type = BorderType.Medium ' Medium left border
range.Style.RightBorder.Type = BorderType.Medium ' Medium right border
range.Style.TopBorder.Type = BorderType.Medium ' Medium top border
$vbLabelText   $csharpLabel

上面的代碼示範了如何使用 C# 中的 IronXL 自訂 Excel 工作表中特定單元格的外觀。 它首先將單元格 A1 的背景顏色設為淺黃色並使字體加粗,有效地將其設計為標題。

然後,它定義了一個範圍,覆蓋單元格 A1 到 A4,並在這個範圍的底部、左側、右側和頂部邊緣設置中等粗細的邊框,以增強其在工作表中的視覺區別。 這些設計選項允許開發人員創建視覺吸引力的 Excel 文檔,並根據他們的具體需求進行組織。

輸出為:

如何在 C# 中創建新的 Excel 活頁簿:圖 4 - 使用 IronXL 生成具有格式化和設計的 Excel。

步驟 6: 公式和計算

您可以程式化地向單元格添加公式。 IronXL 支持廣泛的 Excel 函數。

// Add a new column to display the length of developer names
workSheet["B1"].Value = "Name Length";
workSheet["B1"].Style.BackgroundColor = "#FFFF66"; // Styled as heading
workSheet["B1"].Style.Font.Bold = true; // Bold font

// Formula to calculate the length of names in column B
workSheet["B2"].Value = "=LEN(A2)";
workSheet["B3"].Value = "=LEN(A3)";
workSheet["B4"].Value = "=LEN(A4)";

// Add a total count of the length of names in cell A5
workSheet["A5"].Value = "Sum of Length";
workSheet["B5"].Formula = "=SUM(B2:B4)";
// Add a new column to display the length of developer names
workSheet["B1"].Value = "Name Length";
workSheet["B1"].Style.BackgroundColor = "#FFFF66"; // Styled as heading
workSheet["B1"].Style.Font.Bold = true; // Bold font

// Formula to calculate the length of names in column B
workSheet["B2"].Value = "=LEN(A2)";
workSheet["B3"].Value = "=LEN(A3)";
workSheet["B4"].Value = "=LEN(A4)";

// Add a total count of the length of names in cell A5
workSheet["A5"].Value = "Sum of Length";
workSheet["B5"].Formula = "=SUM(B2:B4)";
' Add a new column to display the length of developer names
workSheet("B1").Value = "Name Length"
workSheet("B1").Style.BackgroundColor = "#FFFF66" ' Styled as heading
workSheet("B1").Style.Font.Bold = True ' Bold font

' Formula to calculate the length of names in column B
workSheet("B2").Value = "=LEN(A2)"
workSheet("B3").Value = "=LEN(A3)"
workSheet("B4").Value = "=LEN(A4)"

' Add a total count of the length of names in cell A5
workSheet("A5").Value = "Sum of Length"
workSheet("B5").Formula = "=SUM(B2:B4)"
$vbLabelText   $csharpLabel

上面的代碼說明了如何在 IronXL 中使用公式和函數,計算開發者姓名的長度以及在 Excel 工作表中計算這些長度的總和。 通過這個示範,開發人員可以了解如何在 IronXL 中整合公式和函數,以程式化方式進行 Excel 工作表中的動態計算和操作,提供靈活性和自動化數據處理任務。

首先,在單元格 B1 中添加一個標題為 "Name Length" 並對其進行樣式設計以突出其重要性。 隨後,在單元格 B2、B3 和 B4 中應用公式以使用 LEN 函數計算每個開發人員姓名的長度,引用列 A 中的相應單元格。 這使得當開發人員姓名發生變化時自動計算姓名長度。

此外,使用 SUM 函數計算單元格 B5 中開發人員姓名長度的總數,將單元格 B2 至 B4 的值相加。

通過加入這些公式,工作表會動態更新。 這個用例可能不具有實際意義,但只是用於演示在代碼中使用 Excel 公式的例子。

如何在 C# 中創建新的 Excel 活頁簿:圖 5 - 使用 IronXL 的公式和計算的 Excel 輸出。

結論

In summary, this tutorial has demonstrated the process of creating a new Excel workbook in C# using IronXL, a robust library facilitating Excel file manipulation within the C# ecosystem. 通過使用 IronXL,開發人員可以無縫地將 Excel 功能整合到他們的應用程序中,從設置開發環境到以程式化方式生成 Excel 活頁簿。 除了進行格式化、設計和應用公式的能力外,IronXL 還提供高效數據管理和分析的綜合功能集。

有关如何使用 IronXL 的參考,請訪問文檔頁面。 IronXL 還提供了一系列代碼範例,這些範例有助於快速入門。

開發人員可以通過其免費試用來探索 IronXL 和購買,確保從評估到全面實施的無縫過渡。 有關永久許可的更多詳情,請訪問許可頁面鏈接。

常見問題解答

如何在不使用 Interop 的情況下用 C# 創建新的 Excel 工作簿?

您可以通過使用 IronXL 在不使用 Interop 的情況下在 C# 中創建新的 Excel 工作簿。首先,設置您的 C# 專案並安裝 IronXL NuGet 套件。然後,使用 IronXL 的 API 創建新工作簿,添加工作表,並填充數據。

如何使用 C# 格式化 Excel 工作簿中的單元格?

使用 IronXL,您可以在 C# 中格式化 Excel 工作簿中的單元格。IronXL 允許您以程式方式應用字體更改、背景顏色和邊框等樣式,使您能夠創建專業外觀的試算表。

我能在 C# 創建的 Excel 工作簿中使用公式嗎?

是的,您可以使用 IronXL 在 C# 創建的 Excel 工作簿中使用公式。IronXL 支持多種 Excel 功能,允許您在工作表中直接進行合計列或計算平均值等計算。

使用 IronXL 比 Microsoft Office Interop 有什麼優勢?

IronXL 提供了多個優勢,包括不需要在服務器上安裝 Excel、更高效能,以及更容易集成到 C# 應用程式中。它還支持多種 Excel 功能而不需要 Interop 的額外負擔。

如何在 C# 專案中安裝 IronXL?

要在 C# 專案中安裝 IronXL,請訪問 Visual Studio 中的'管理 NuGet 套件'選項,搜索 IronXL,並安裝它。或者,使用套件管理器控制台命令Install-Package IronXL.Excel

能在網頁應用程式中使用 IronXL 嗎?

是的,IronXL 可以用於 ASP.NET MVC 和 Blazor 等網頁應用程式。其靈活性允許您將 Excel 功能集成到各種專案類型中,包括網頁表單和 API。

IronXL 可以處理哪些文件格式?

IronXL 支持多種文件格式,包括 XLSX、CSV、TSV、JSON、XML 和 HTML。這個靈活性使您能夠在 Excel 相關任務中無縫處理不同的數據格式。

IronXL 如何協助自動化 Excel 的流程?

IronXL 通過允許開發人員以程式方式創建、修改和管理 C# 應用程式中的 Excel 文件來協助自動化 Excel 的流程。這包括生成報告、導入/導出數據和自動計算。

我可以在哪裡訪問 IronXL 的文檔和教程?

IronXL 的文檔和教程可在 IronXL 網站上獲得。這些資源提供了詳細的指南和範例,幫助您在專案中有效使用 IronXL 的功能。

IronXL 是否有免費試用?

是的,IronXL 提供免費試用,讓開發人員探索其功能。此試用允許您評估 IronXL 在以程式方式創建和管理 Excel 工作簿時的能力。

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