如何設置單元格數據格式

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

查克尼思·賓

在 Excel 中的資料格式化和數字格式化允許您控制數字、日期、時間以及其他資料在單元格中的顯示方式,增強可讀性並確保資料的準確性。 您可以使用資料格式將資訊以特定格式呈現,如百分比或貨幣。 同樣地,數字格式讓您可以自訂小數位數和顯示選項。

IronXL 函式庫允許您在 C# 中設定數據格式或數字格式。 此库简化了以程序方式创建、格式化和操作 Excel 文件的过程,使其成为 C# 应用程序中处理和展示数据任务的宝贵工具。


開始使用IronXL

立即在您的專案中使用IronXL,並享受免費試用。

第一步:
green 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")
VB   C#
數據格式

設定單元格值為字符串

在 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"
VB   C#

使用內建格式示例

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")
VB   C#

可用的內置數據格式

對於持續時間類型,輸入值以天為單位表示。 例如,1 天等於 24 小時,1.05 天相當於 25 小時和 12 分鐘。 以下是可用的格式類型:

所有可用的數據格式

描述

  • 一般:預設格式,顯示數字時不使用任何特定格式。
  • 持續時間1:以分鐘和秒顯示持續時間值,例如“mm:ss”。輸入到值屬性中的數字將被視為天數。
  • Duration2:顯示以小時、分鐘和秒為單位的持續時間值,例如 "[h]:mm:ss.
  • Duration3:以分鐘、秒和毫秒顯示持續時間值,例如 "mm:ss.0"。
  • 會計0:格式化會計數值時不使用小數點,負數用括號表示,如"#,##0"。);(#,##0).
  • Accounting0Red:格式化會計值,不使用小數位數,對負值使用紅色,如「#,##0_」。);Red.
  • Accounting2:使用括號表示負數值,將會計數值格式化為兩位小數,如"#,##0.00;(#,##0.00).
  • Accounting2Red:使用紅色來格式化帳務值的兩位小數,如"#,##0.00_);Red.
  • Time1:以12小時制格式顯示時間值,例如“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」。
  • 百分比:將百分比值格式化為沒有小數位的數字,例如「0%」。
  • Percent2:將百分比值格式化為兩位小數,例如「0.00%」。
  • Currency0:格式化貨幣值,不使用小數位,負值使用括號,例如 "$#,##0"。);($#,##0).
  • Currency0Red:格式化貨幣值而不使用小數位,使用紅色表示負值,例如「$#,##0;[紅色]-$#,##0」。);Red.
  • Currency2:使用括號表示負值,格式化貨幣值為兩位小數,例如「$#,##0.00;(-$#,##0.00)」。($#,##0.00).
  • Currency2Red:將貨幣數值格式化為兩個小數位,並使用紅色來表示負值,如 "$#,##0.00_);Red.
  • Thousands0:格式化數字時使用千位分隔符,不帶小數位,例如 "#,##0."。
  • 千分位2:將數字格式化為千分位分隔,並有兩位小數,如"#,##0.00"。
  • Number0:格式化數字,不包括小數位,如「0.」。
  • Number2:將數字格式化為兩位小數,例如「0.00」。
  • 文本:將文字值格式化為純文字,例如"@"。(無特定格式應用).
Chaknith related to 描述

查克尼思·賓

軟體工程師

Chaknith 是開發者界的夏洛克福爾摩斯。他第一次意識到自己可能有個軟體工程的未來,是在他為了娛樂而參加程式挑戰的時候。他的重點是 IronXL 和 IronBarcode,但他也引以為豪的是,他幫助客戶解決所有產品的問題。Chaknith 利用他與客戶直接對話中獲得的知識,以進一步改進產品。他的實際反饋超越了 Jira 工單,並支持產品開發、文件撰寫和行銷,以提升客戶的整體體驗。不在公司時,他通常在學習機器學習、寫程式和徒步旅行。