如何設置單元格數據格式

Chaknith related to 如何設置單元格數據格式
查克尼思·賓
2023年7月31日
已更新 2024年12月10日
分享:
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")
$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

可用的內置數據格式

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

所有可用的資料格式

描述

  • 常規:顯示數字的預設格式,不使用任何特定格式。
  • 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 小時制格式,例如 "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_);Red」。
  • Currency2:格式化貨幣數值為兩位小數,使用括號表示負值,如「$#,##0.00;($#,##0.00)」。
  • Currency2Red:格式化貨幣值為兩位小數,並對負值使用紅色顯示,例如 "$#,##0.00_);Red."
  • Thousands0:格式化數字,使用千位分隔符且無小數位,例如 "#,##0."
  • Thousands2:將數字格式化為帶有千位分隔符和兩位小數,如「#,##0.00」。
  • Number0: 格式化没有小数位的数字,如“0”。
  • Number2:將數字格式化為有兩位小數,如 "0.00"。
  • 文字:將文字值格式化為純文字,例如「@」(不適用特定格式)。
Chaknith related to 描述
軟體工程師
Chaknith 是開發者界的夏洛克福爾摩斯。他第一次意識到自己可能有個軟體工程的未來,是在他為了娛樂而參加程式挑戰的時候。他的重點是 IronXL 和 IronBarcode,但他也引以為豪的是,他幫助客戶解決所有產品的問題。Chaknith 利用他與客戶直接對話中獲得的知識,以進一步改進產品。他的實際反饋超越了 Jira 工單,並支持產品開發、文件撰寫和行銷,以提升客戶的整體體驗。不在公司時,他通常在學習機器學習、寫程式和徒步旅行。