IRONSOFTWAREHOME
USING IRONXL

如何在 C# 中使用 IronXL 自動調整 Excel 單元格

Curtis Chau
Curtis Chau
Updated: 2026年6月28日

在當今資料驅動的世界中,Microsoft Excel 仍然是企業和專業人士不可或缺的工具。無論是處理資料、建立報告,還是視覺化資料,Excel 的多功能性無可比擬。 然而,在 C# 程式中對 Excel 文件進行程式化操作時,開發者經常會面臨挑戰。 這時 IronXL 程式庫便派上用場,提供了一個在 C# 環境中進行 Excel 自動化的無縫解決方案。

IronXL 是由Iron Software 提供的一個程式庫,為在 C# .NET 和 VB.NET 環境中處理 Excel 文件提供了直觀的 APIs。 使用 IronXL,無需安裝 Microsoft Office 或 Excel Interop 組件。 它使開發者能夠輕鬆讀取、編輯和建立 Excel 試算表文件,完全支持包括 .NET 8、7、6,Core Frameworks 及 Azure 環境在內的各種 .NET Framework。

在本文中,我們將學習如何使用 C# 和 IronXL 自動調整 Excel 中的欄寬和列高。

  1. 建立一個 Visual Studio 專案來演示 Excel 試算表中的自動調整單元格。
  2. 將 IronXL 程式庫安裝到專案中。
  3. 使用 IronXL 程式庫自動調整欄寬。
  4. 使用 IronXL 程式庫自動調整行高。
  5. 使用 IronXL 程式庫手動設置欄寬和行高。

IronXL

IronXL 程式庫是一個多功能的 .NET 程式庫,旨在簡化 C# 開發者的 Excel 試算表操作。 提供快速且直觀的 API,IronXL 使使用者能夠輕鬆地存取、修改和生成 Excel 文件,而不依賴於 Office Interop。它的相容性擴展至多種 .NET Framework,包括 .NET Core 和 Azure,且不需要任何特殊依賴或安裝 Microsoft Office。支持多種 .NET 語言,如 C#、VB.NET 和 F#,IronXL 適合各種開發場景,包括控制台、網頁和桌面應用。 此外,IronXL 的相容性涵蓋不同平台,包括 Windows、Linux、macOS、Docker、Azure 和 AWS,使其成為開發者在多樣環境中尋求高效 Excel 整合的必備工具。

IronXL 程式庫的主要功能

  1. 簡單整合: IronXL 與 C# 應用無縫整合,提供簡單且直觀的 API 用於 Excel 自動化。 開發者可以快速上手,學習曲線非常平滑。
  2. 讀寫 Excel 文件: 使用 IronXL,可以輕鬆從現有的 Excel 文件中讀取資料,並將資料寫入新的或現有的試算表。 該功能對於資料導入/導出和報告生成等任務至關重要。
  3. 格式化和樣式: IronXL 允許您對 Excel 單元格應用格式和樣式,包括字體、顏色、邊框等。 這可確保您生成的 Excel 文件具有專業和精緻的外觀。
  4. 公式支持: 需要對 Excel 資料進行複雜計算或應用公式嗎? IronXL 支持 Excel 公式,允許您自動化計算和資料操作。
  5. 自動調整單元格: IronXL 提供的一個便利功能是能夠在 Excel 中自動調整單元格,確保內容整齊地適合每個單元格而不被截斷。

步驟 1:建立 Visual Studio 專案來演示 Excel 試算表中的自動調整單元格

首先,讓我們建立一個如下所示的 Visual Studio 專案。 從列表中選擇控制台應用模板

如何使用 C# 自動調整 Excel 單元格:圖 1 - 開啟 Visual Studio,並新增一個型別為 C# 控制台應用的新專案。

提供專案名稱和位置

如何使用 C# 自動調整 Excel 單元格:圖 2 - 接下來,指定專案名稱和位置。

從下拉選單中選擇所需的 .NET 版本並點擊建立

如何使用 C# 自動調整 Excel 單元格:圖 3 - 然後選擇所需的 .NET Framework 版本並點擊建立。

步驟 2:將 IronXL 程式庫安裝到專案中

從 Visual Studio NuGet Package Manager 安裝IronXL 程式庫

如何使用 C# 自動調整 Excel 單元格:圖 4 - 使用 NuGet Package Manager 中的

該套件也可以使用 NuGet 命令行安裝

> dotnet add package IronXL.Excel --version 2024.3.20

如何使用 C# 自動調整 Excel 單元格:圖 5 - IronXL.Excel NuGet 包

有了這些,幾乎可以開始編寫程式碼了。

步驟 3:使用 IronXL 程式庫自動調整欄寬

來自 IronXL 程式庫的 AutoSizeColumn 方法調整欄的寬度以適合其內容。 此方法根據單元格中使用的字體計算文字寬度。 如果系統上沒有可用的精確字體,它將嘗試使用預設字體來測量。 如果找不到預設字體,則將嘗試使用任何可用字體。 然而,如果找不到字體,將會拋出異常。 它使用從零開始的列索引作為參數。 它必須在由 0 和 (ColumnCount - 1) 定義的範圍內。 如果提供的 columnIndex 超出有效範圍,則拋出 ArgumentException。 當機器上未安裝字體時,會拋出 SixLabors.Fonts.FontException。

現在,讓我們看一下如何利用這個來調整 Excel 文件的大小。您可以從這裡下載一個 Excel 範例文件。

輸入文件

這裡您可以看到欄寬未被適當定義,因此很難閱讀。 現在讓我們
看看如何使用 IronXL 程式庫在 Excel 表中自動調整欄寬。

如何使用 C# 自動調整 Excel 單元格:圖 6 - 輸入 Excel 文件

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var colCount = workSheet.Columns.Count();

for (int i = 0; i < colCount; i++)
{ 
    // Auto-fit column width for index i
    workSheet.AutoSizeColumn(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResize.xlsx"); // Result file

程式碼說明

  1. 首先,我們使用 WorkBook.Load() 方法載入 FinancialSample.xlsx。
  2. 然後我們獲得用於調整的列數。
  3. 我們遍歷所有欄索引來自動調整欄寬。
  4. 最後,我們將結果保存到一個名為 autoResize.xlsx 的新文件。

輸出文件

下方您可以看到所有欄都已自動調整且可見。

如何使用 C# 自動調整 Excel 單元格:圖 7 - 輸出 Excel,欄寬已自動調整。

步驟 4:使用 IronXL 程式庫自動調整行高

using AutoSizeRow 方法調整行高以適應其內容。 重要的是要注意,這種方法根據單元格中使用的字體計算文字高度。 如果系統上沒有可用的精確字體,它將嘗試使用預設字體來測量。 如果找不到預設字體,則將嘗試使用任何可用字體。 然而,如果找不到字體,將會拋出異常。 它使用從零開始的行索引作為參數。 它必須在由 0 和 (RowCount - 1) 定義的範圍內。 如果提供的 rowIndex 超出有效範圍,則拋出 ArgumentException。 當機器上未安裝字體時,會拋出 SixLabors.Fonts.FontException。

輸入 Excel 文件

在下面的例子中,您可以看到有些行沒有適當調整為修正資料。 現在讓我們看看使用 C# 程式碼自動調整 Excel 行高。

如何使用 C# 自動調整 Excel 單元格:圖 8 - 輸入 Excel 文件

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var rowCount = workSheet.RowCount;

for (int i = 0; i < rowCount; i++)
{
    // Auto-fit row height for index i
    workSheet.AutoSizeRow(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResizeRows.xlsx"); // Result file

程式碼說明

  1. 首先,我們使用 WorkBook.Load() 方法載入 FinancialSample.xlsx。
  2. 獲得總行數。
  3. 我們遍歷所有行索引來自動調整行高。
  4. 最後,我們將結果保存到一個名為 autoResizeRows.xlsx 的新文件。

輸出 Excel 文件

如何使用 C# 自動調整 Excel 單元格:圖 9 - 輸出 Excel,行高已自動調整。

步驟 5:使用 IronXL 手動設置欄寬和行高

除了自動調整行和列之外,IronXL 還提供了手動調整寬度和高度為特定行高值和特定欄寬值的選項。

輸入 Excel 文件

如何使用 C# 自動調整 Excel 單元格:圖 10 - 輸入 Excel 文件

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Manually set row height and column width
RangeRow row = workSheet.GetRow(0);
row.Height = 500; // Set height
RangeColumn col = workSheet.GetColumn(0);
col.Width = 5000; // Set width

// Save the workbook with specific values set
workBook.SaveAs("specificValue.xlsx");

程式碼說明

  1. 使用 WorkBook.Load() 函式載入 FinancialSample.xlsx。
  2. 檢索特定的行和列以手動調整其高度和寬度。
  3. 設置所需的高度和寬度值。
  4. 保存修改過的文件,名稱為 specificValue.xlsx。

輸出 Excel 文件

如何使用 C# 自動調整 Excel 單元格:圖 11 - 輸出 Excel,手動設置欄寬和高度大小。

授權

獲取免費試用版,免費使用 IronXL 的所有功能 30 天。

獲得的授權必須放置在 appSettings.json 文件中:

{
  "IronXL.License.LicenseKey": "myTrialKey"
}
JSON

結論

擁有來自 IronXL 的 AutoSizeColumn 和 AutoSizeRow 等功能,開發者可以輕鬆確保 Excel 試算表動態調整其包含的內容,不論是導入的資料、動態報告、使用者生成的內容還是資料分析結果。

IronXL 與各種 .NET Framework的相容性,包括 .NET Core 和 Azure,確保開發者可以將 Excel 自動化整合到各種應用中,而不需要依賴 Microsoft Office 或 Excel Interop。此外,IronXL 支持多種 .NET 語言和平台,使其成為尋求簡化 Excel 操作任務的開發者的多功能選擇。

本質上,IronXL 賦能開發者在 Excel 自動化專案中提高生產力、準確性和靈活性,提供一系列綜合特性以滿足現代 C# 開發的需求。 無論是生成報告、分析資料還是呈現資訊,IronXL 提供了在 C# 生態系統中 Excel 自動化所需的工具。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預約您的免費即時演示
Booking Badge

全球數百萬工程師的信賴

Iron Software的客戶標誌
獲得無義務諮詢
填寫以下表格或電郵sales@ironsoftware.com
您的資料將始終保密。
全球數百萬工程師的信賴
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立