如何在 C# 中添加命名表 | IronXL

如何使用 C# 在 Excel 中新增已命名的表格;。

This article was translated from English: Does it need improvement?
Translated
View the article in English

若要使用 C# 在 Excel 中新增命名表格,請使用 IronXL.Excel 的 AddNamedTable 方法,並為表格名稱、範圍和可選的樣式設定提供參數 - 只需呼叫一次方法即可啟用結構化資料管理。

命名表也常被稱為 Excel 表,它指的是一種特定類型的區域,該區域已指定名稱,並具有與之關聯的附加功能和屬性。 命名表格提供增強的資料組織能力、自動格式化、內建篩選功能,以及與 Excel 公式的無縫整合,使其成為在 Excel 自動化工作流程中管理結構化資料集的必要工具。

快速入門:在一行中建立並命名表格。

本範例展示如何使用 IronXL 在工作表中新增命名表—只需一次清晰的方法呼叫即可定義名稱、範圍、篩選可見度和樣式。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronXL

    PM > Install-Package IronXL.Excel

  2. 複製並運行這段程式碼。

    var table = workSheet.AddNamedTable("MyTable", workSheet.GetRange("A1:B5"), showFilter: true, tableStyle: IronXL.Styles.TableStyles.Medium2);
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronXL,免費試用!
    arrow pointer


如何在 Excel 工作表中加入命名表? 若要新增命名表,請使用`AddNamedTable`方法。 此方法需要以字串形式提供表名,以及範圍物件。 您也可以選擇指定表格樣式以及是否顯示篩選器。 當使用 [`DataSet` 和 `DataTable` 匯入](/csharp/excel/how-to/export-dataset-datable/)結構化資料需要適當組織時,此功能尤其有用。 ```csharp // Example code to add a named table using IronXL using IronXL; using IronXL.Styles; // Load the Excel workbook var workbook = WorkBook.Load("example.xlsx"); // Select the worksheet var workSheet = workbook.WorkSheets.First(); // Define the range for the named table var range = workSheet["A1:B10"]; // Add a named table with the specified name and range var namedTable = workSheet.AddNamedTable("MyTable", range); // Optionally, set table style and visibility of the filter namedTable.SetStyle(TableStyles.Dark10); namedTable.ShowFilter = true; // Save the modified workbook workbook.SaveAs("modified_example.xlsx"); ``` 命名表格透過 `TableStyles` 枚舉支援各種樣式選項。 您可以立即套用專業的格式,與其他格式功能相輔相成,例如 [儲存格樣式與邊界](/csharp/excel/how-to/border-alignment/)。 以下是示範不同表格樣式應用程式的範例: ```csharp // Example: Creating multiple styled named tables using IronXL; using IronXL.Styles; var workbook = WorkBook.Create(); var sheet = workbook.CreateWorkSheet("SalesData"); // Add sample data sheet["A1"].Value = "Product"; sheet["B1"].Value = "Sales"; sheet["C1"].Value = "Revenue"; // Populate data rows for (int i = 2; i <= 10; i++) { sheet[$"A{i}"].Value = $"Product {i-1}"; sheet[$"B{i}"].IntValue = i * 100; sheet[$"C{i}"].DecimalValue = i * 250.50m; } // Create a light-styled table var salesTable = sheet.AddNamedTable("SalesTable", sheet["A1:C10"], showFilter: true, tableStyle: TableStyles.Light15); // Create another table with dark styling sheet["E1"].Value = "Region"; sheet["F1"].Value = "Performance"; var regionTable = sheet.AddNamedTable("RegionData", sheet["E1:F5"], showFilter: false, tableStyle: TableStyles.Dark3); workbook.SaveAs("styled_tables.xlsx"); ```
Excel 電子表格,顯示包含三列的命名表格,以及包含範例文字資料的格式化標題

如何從我的工作表擷取已命名的表格?

什麼方法可以回傳工作表中所有已命名的表格? `GetNamedTableNames` 方法會以字串清單的形式傳回工作表中所有已命名的表格。 這在處理包含多個表格的工作簿或 [管理具有動態資料結構的工作表](/csharp/excel/how-to/manage-worksheet/)時特別有用。 ```csharp // Example code to retrieve all named table names using IronXL using IronXL; // Load the Excel workbook var workbook = WorkBook.Load("example.xlsx"); // Select the worksheet var workSheet = workbook.WorkSheets.First(); // Retrieve all named table names var tableNames = workSheet.GetNamedTableNames(); // Output each table name foreach (var name in tableNames) { Console.WriteLine("Named Table: " + name); } ```

如何根據表的名稱存取特定的命名表? 使用`GetNamedTable`方法檢索工作表中指定的表名。 擷取後,您可以存取各種屬性,並執行[排序儲存格範圍](/csharp/excel/how-to/sort-cells/)或套用[條件格式化](/csharp/excel/how-to/conditional-formatting/)等作業。 ```csharp // Example code to retrieve a specific named table using IronXL using IronXL; // Load the Excel workbook var workbook = WorkBook.Load("example.xlsx"); // Select the worksheet var workSheet = workbook.WorkSheets.First(); // Retrieve a specific named table var namedTable = workSheet.GetNamedTable("MyTable"); // Output some information about the table Console.WriteLine("Named Table: " + namedTable.Name); Console.WriteLine("Rows: " + namedTable.Rows); ``` ### 使用表格資料工作 命名表格提供強大的資料處理功能。 以下是一個綜合範例,展示如何處理表格資料: ```csharp // Advanced named table operations using IronXL; using System.Linq; var workbook = WorkBook.Load("sales_data.xlsx"); var sheet = workbook.DefaultWorkSheet; // Create a named table from existing data var dataRange = sheet["A1:D20"]; var salesTable = sheet.AddNamedTable("MonthlySales", dataRange, true); // Access table data for calculations var tableRange = salesTable.TableRange; // Sum values in a specific column (assuming column C contains numeric data) decimal totalSales = 0; for (int row = 2; row <= tableRange.RowCount; row++) { var cellValue = sheet[$"C{row}"].DecimalValue; totalSales += cellValue; } // Add summary row var summaryRow = tableRange.RowCount + 1; sheet[$"B{summaryRow}"].Value = "Total:"; sheet[$"C{summaryRow}"].Value = totalSales; // Apply formatting to the summary row sheet[$"B{summaryRow}:D{summaryRow}"].Style.Font.Bold = true; sheet[$"B{summaryRow}:D{summaryRow}"].Style.SetBackgroundColor("#FFE599"); workbook.SaveAs("sales_with_summary.xlsx"); ``` ### 與其他 IronXL 功能整合。 命名表格可與其他 IronXL 功能無縫配合。 您可以將它們與 [ 公式](/csharp/excel/how-to/edit-formulas/)結合,進行動態計算,或在 [ 創建圖表](/csharp/excel/how-to/csharp-create-excel-chart-programmatically/)時將它們用作資料來源。 在[匯出到不同格式](/csharp/excel/how-to/convert-spreadsheet-file-types/)之前,它們也是整理資料的絕佳工具。 ```csharp // Example: Named table with formulas using IronXL; var workbook = WorkBook.Create(); var sheet = workbook.CreateWorkSheet("Analysis"); // Create data structure sheet["A1"].Value = "Item"; sheet["B1"].Value = "Quantity"; sheet["C1"].Value = "Price"; sheet["D1"].Value = "Total"; // Add sample data for (int i = 2; i <= 6; i++) { sheet[$"A{i}"].Value = $"Item {i-1}"; sheet[$"B{i}"].IntValue = i * 10; sheet[$"C{i}"].DecimalValue = i * 15.99m; // Add formula to calculate total sheet[$"D{i}"].Formula = $"=B{i}*C{i}"; } // Create named table including the formula column var priceTable = sheet.AddNamedTable("PriceCalculations", sheet["A1:D6"], showFilter: true, tableStyle: TableStyles.Medium9); // Add a grand total formula sheet["C7"].Value = "Grand Total:"; sheet["D7"].Formula = "=SUM(D2:D6)"; sheet["D7"].Style.Font.Bold = true; workbook.SaveAs("table_with_formulas.xlsx"); ``` IronXL也可以新增命名範圍。 了解更多信息,[請參閱"如何新增命名範圍"](/csharp/excel/how-to/named-range/) 。

常見問題解答

什麼是 Excel 中的命名表格?

Excel 中的命名表格是一種特定類型的範圍,已指定名稱,並包含附加功能。IronXL 可讓您以 C# 程式化的方式建立這些表格,提供增強的資料組織功能、自動格式化、內建篩選功能,以及與 Excel 公式的無縫整合。

如何使用 C# 在 Excel 工作表中加入已命名的表格?

若要使用 IronXL 新增已命名的表格,請使用 AddNamedTable 方法。此方法需要以字串形式提供表名和範圍物件。您可以選擇性地指定表格樣式和篩選器的可見性。例如:workSheet.AddNamedTable("MyTable", workSheet.GetRange("A1:B5"), showFilter: true, tableStyle:IronXL.Styles.TableStyles.Medium2).

我可以為已命名的表格套用自訂樣式嗎?

是的,IronXL 透過 TableStyles 枚舉支援已命名表格的各種樣式選項。您可以使用 Dark10、Medium2 等樣式以及其他預先定義的表格樣式,立即套用專業格式。只需使用 SetStyle 方法或在建立表格時指定 tableStyle 參數。

是否可以在已命名的表格中顯示或隱藏篩選器?

絕對可以IronXL 允許您在已命名的表格中控制篩選器的可見性。您可以設定 ShowFilter 屬性為 true 或 false,或在建立表格時使用 AddNamedTable 方法中的 showFilter 參數直接指定。

建立命名表所需的參數為何?

IronXL 中的 AddNamedTable 方法需要兩個基本參數:表格名稱(以字串形式)和定義表格區域的範圍物件。可選參數包括 showFilter (布林) 和 tableStyle (來自 TableStyles 枚舉)。

我可以在同一個工作表中建立多個有樣式命名的表格嗎?

是的,IronXL 允許您在同一個工作表中建立多個具有不同樣式的命名表格。每個表格都可以有自己獨特的名稱、範圍、樣式和篩選設定,非常適合在單一 Excel 檔案中組織不同的資料集。

柯蒂斯·週
技術撰稿人

Curtis Chau擁有卡爾頓大學電腦科學學士學位,專長於前端開發,精通Node.js、TypeScript、JavaScript和React。他熱衷於打造直覺美觀的使用者介面,喜歡使用現代框架,並擅長撰寫結構清晰、視覺效果出色的使用者手冊。

除了開發工作之外,柯蒂斯對物聯網 (IoT) 也抱有濃厚的興趣,致力於探索硬體和軟體整合的創新方法。閒暇時,他喜歡玩遊戲和製作 Discord 機器人,將他對科技的熱愛與創造力結合。

準備好開始了嗎?
Nuget 下載 1,802,965 | 版本: 2025.12 剛剛發布