如何在 Excel 中設置單元格數據格式

如何使用 IronXL 在 C# 中設定儲存格資料格式

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

Excel 中的資料格式設定和數字格式設定功能可讓您控制數字、日期、時間和其他資料在儲存格中的顯示方式,從而提高可讀性並確保資料準確性。 透過資料格式,您可以將資訊以特定格式(例如百分比或貨幣)呈現。 同樣,數字格式允許您自訂小數位數和顯示選項。

快速入門:在一行中將內建格式應用於單一儲存格

此範例展示了使用 IronXL 的 API 建立新的 Excel 工作簿並將內建格式套用至特定儲存格是多麼容易。 只需幾秒鐘即可啟動並運行,無需任何互通依賴項——只需設定"FormatString"並儲存即可。

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

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

    PM > Install-Package IronXL.Excel

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

    IronXL.WorkBook book = IronXL.WorkBook.Create(); book.DefaultWorkSheet["B2"].FormatString = IronXL.Formatting.BuiltinFormats.Currency2;
  3. 部署到您的生產環境進行測試

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


設定單元格資料格式範例

可以透過單元格和單元格區域存取FormatString屬性。 因此,可以為單一儲存格、列、行和任何選定範圍設定資料格式。

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format.cs
using IronXL;
using IronXL.Formatting;
using System;
using System.Linq;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set the data format to 12300.00%
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Percent2;

// Set the data format to 123.0000
workSheet["A2"].Value = 123;
workSheet["A2"].FormatString = "0.0000";

// Set data display format to range
DateTime dateValue = new DateTime(2020, 1, 1, 12, 12, 12);
workSheet["A3"].Value = dateValue;
workSheet["A4"].Value = new DateTime(2022, 3, 3, 10, 10, 10);
workSheet["A5"].Value = new DateTime(2021, 2, 2, 11, 11, 11);

IronXL.Range range = workSheet["A3:A5"];

// Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss";

workBook.SaveAs("dataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting
Imports System
Imports System.Linq

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Set the data format to 12300.00%
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Percent2

' Set the data format to 123.0000
Private workSheet("A2").Value = 123
Private workSheet("A2").FormatString = "0.0000"

' Set data display format to range
Private dateValue As New DateTime(2020, 1, 1, 12, 12, 12)
Private workSheet("A3").Value = dateValue
Private workSheet("A4").Value = New DateTime(2022, 3, 3, 10, 10, 10)
Private workSheet("A5").Value = New DateTime(2021, 2, 2, 11, 11, 11)

Private range As IronXL.Range = workSheet("A3:A5")

' Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss"

workBook.SaveAs("dataFormats.xlsx")
$vbLabelText   $csharpLabel
資料格式

將單元格值設為字串

在 IronXL 中設定值時,請使用StringValue而不是Value以便直接將確切值賦給儲存格,而無需自動轉換。 這種用法類似於在 Excel 中儲存格值前加上撇號。

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
' Assign value as string
workSheet("A1").StringValue = "4402-12"
$vbLabelText   $csharpLabel

使用內建格式範例

IronXL 函式庫提供了各種預先定義的格式字串,可以透過IronXL.Formatting.BuiltinFormats類別存取這些字串,用於格式化 Excel 儲存格。 這樣您就可以自訂資料在 Excel 表格中的顯示方式。

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-builtin-formats.cs
using IronXL;
using IronXL.Formatting;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Use builtin formats
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Accounting0;

workBook.SaveAs("builtinDataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Use builtin formats
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Accounting0

workBook.SaveAs("builtinDataFormats.xlsx")
$vbLabelText   $csharpLabel

可用的內建資料格式

對於Duration類型,輸入值以天為單位。 例如,1 天等於 24 小時,1.05 天等於 25 小時 12 分鐘。 以下是可用的格式類型:

所有可用資料格式

描述

  • General :預設格式,按原樣顯示數字,不進行任何特定格式設定。
  • Duration1 :以分鐘和秒為單位顯示持續時間值,格式為"mm:ss"。在 Value 屬性中輸入的數字將被視為天數。
  • Duration2 :以小時、分鐘和秒顯示持續時間值,格式為"[h]:mm:ss"。
  • Duration3 :以分鐘、秒和毫秒顯示持續時間值,例如"mm:ss.0"。
  • Accounting0 :格式化會計值,不包含小數位,負值用括號括起來,例如"#,##0_);(#,##0)。
  • Accounting0Red :格式化會計值時不使用小數位,負值使用紅色,例如"#,##0_);Red"。
  • Accounting2 :將會計值格式化為兩位小數,負值用括號括起來,例如"#,##0.00;(#,##0.00)"。
  • Accounting2Red :將會計數值格式化為兩位小數,負值以紅色表示,例如"#,##0.00_);Red"。
  • Time1 :以 12 小時制時鐘格式設定時間值,並附有 AM/PM,例如"h:mm AM/PM"。
  • Time2 :以 12 小時制時鐘格式格式化時間值,包括秒和 AM/PM,例如"h:mm:ss AM/PM"。
  • Time3 :以 24 小時制格式格式化時間值,不包含秒,例如"h:mm"。
  • Time4 :以 24 小時制時鐘格式(含秒)格式化時間值,例如"h:mm:ss"。
  • ShortDate :將日期值格式化為簡短格式,例如"m/d/yy"。
  • ShortDateAndTime :以簡短格式格式化日期和時間值,例如"m/d/yy h:mm"。
  • LongDate1 :將日期值格式化為包含月份、日期和年份的長格式,例如"d-mmm-yy"。
  • LongDate2 :以長格式格式化日期值,包含日和縮寫月份,例如"d-mmm"。
  • LongDate3 :以長格式格式化日期值,月份和年份縮寫為"mmm-yy"。
  • Fraction1 :格式化一位小數,例如"# ?/?"。
  • Fraction2 :格式化兩位小數,例如"# ??/??"。
  • Scientific1 :以科學計數法格式化數字,小數點後面保留一位數字,例如"##0.0E+0"。
  • Scientific2 :以科學計數法格式化數字,小數點後面保留兩位數字,例如"0.00E+00"。
  • Percent :格式化百分比值,不含小數位數,例如"0%"。
  • Percent2 :將百分比值格式化為兩位小數,例如"0.00%"。
  • Currency0 :格式化貨幣值,不包含小數部分,負值用括號括起來,例如"$#,##0_);($#,##0)。
  • Currency0Red :格式化貨幣值,不顯示小數位,負值使用紅色,例如"$#,##0_);Red"。
  • Currency2 :將貨幣值格式化為兩位小數,負值用括號括起來,例如"$#,##0.00;($#,##0.00)"。
  • Currency2Red :將貨幣值格式化為兩位小數,負值使用紅色,例如"$#,##0.00_);Red"。
  • Thousands0 :將數字格式化為千位分隔符號且不含小數位,例如"#,##0"。
  • Thousands2 :將數字格式化為千位分隔符號和兩位小數,例如"#,##0.00"。
  • Number0 :格式化不含小數部分的數字,例如"0"。
  • Number2 :格式化為兩位小數,例如"0.00"。
  • Text :將文本值格式化為純文本,例如"@"(不應用任何特定格式)。

常見問題解答

如何在Excel中使用C#設置單元格數據格式?

您可以通过访问工作表并设置单元格的FormatString属性来使用IronXL在Excel中设置单元格数据格式。这允许自定义数据的显示方式,如数字、日期和时间,而无需使用Interop。

使用C#庫進行Excel數據格式化的好處是什麼?

使用像IronXL這樣的C#庫進行Excel數據格式化,您可以以編程方式控制數據的外觀,提高可讀性,確保數據的準確性,避免使用Interop的複雜性。它簡化了設置數字格式、日期和自定義格式等任務。

如何在Excel中使用C#對單元格應用自定義格式?

要使用IronXL對單元格應用自定義格式,請加載您的Excel工作簿,訪問工作表,並將單元格的FormatString屬性設置為所需的自定義格式。例如,要將數字顯示為百分比,使用sheet["A1"].FormatString = "0.00%"

我可以使用C#庫在Excel單元格中保留前導零嗎?

是的,使用IronXL,您可以使用StringValue屬性在設置單元格值時保留前導零。這種方法可防止自動轉換並保留單元格中的前導零。

如何使用C#將Excel單元格格式設置為會計樣式?

要使用IronXL用會計樣式格式化Excel單元格,請利用BuiltinFormats類。例如,您可以應用一種具有兩個小數位的會計格式,使用sheet["C3"].FormatString = IronXL.Formatting.BuiltinFormats.Accounting2

在Excel的C#庫中有哪些預定義的數據格式?

IronXL提供了預定義的數據格式,如會計、持續時間、時間、日期、分數、科學、百分比、貨幣和數字。這些內置格式簡化了Excel電子表格中的數據呈現自定義。

如何用紅色顯示Excel中帶負號的貨幣值?

要以紅色顯示帶負號的貨幣值,請將IronXL的FormatString屬性設置為包含紅色的貨幣格式,例如Currency0RedCurrency2Red。例如:sheet["B4"].FormatString = IronXL.Formatting.BuiltinFormats.Currency2Red

IronXL中的Number0格式和Number2格式有什麼區別?

在 IronXL 中,Number0 格式顯示沒有小數位的數字,而 Number2 格式顯示有兩位小數的數字。這些格式有助於自定義 Excel 表格中數據的精確度。

如何在使用C#格式化Excel工作簿後保存更改?

要在使用IronXL格式化後保存Excel工作簿的更改,請在WorkBook對象上使用SaveAs方法。指定所需的文件名和格式以保存更新的工作簿。

使用C#庫設置Excel數據格式有哪些故障排除提示?

在使用IronXL設置Excel數據格式時,確保庫正確集成,驗證使用的格式字符串是否準確,並檢查工作簿保存過程中的任何異常。此外,考慮使用StringValue屬性進行精確的數據輸入。

Chaknith Bin
軟體工程師
Chaknith 在 IronXL 和 IronBarcode 上工作。他對 C# 和 .NET 擁有深厚的專業知識,幫助改進了軟體並支持客戶。他從用戶互動中得到的見解有助於改善產品、文檔和整體體驗。
準備好開始了嗎?
Nuget 下載 1,738,553 | Version: 2025.11 剛發表