如何设置单元格数据格式
数据格式化和数字格式化在Excel中允许您控制数字、日期、时间和其他数据在单元格中的显示方式,提高可读性并确保数据准确性。 您可以使用数据格式以特定格式(如百分比或货币)展示信息。 同样,数字格式允许您自定义小数位数和显示选项。
IronXL 库允许您在 C# 中设置数据格式或数字格式。 这个库简化了以编程方式创建、格式化和操作 Excel 文件的过程,使其成为 C# 应用程序中处理和展示数据任务的宝贵工具。
如何设置单元格数据格式
- 下载C#库以设置数据格式
- 打开现有或新建 Excel 电子表格
- 将单元格、列、行或范围的FormatString属性设置为所需的数据格式
- 使用 BuiltinFormats 类的内置数据格式
- 以各种文件类型导出编辑电子表格
开始使用IronXL
立即在您的项目中开始使用IronXL,并享受免费试用。
设置单元格数据格式示例
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")

将单元格值设置为字符串
在 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"
使用内置格式示例
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")
可用的内置数据格式
对于持续时间类型,输入值以天数表示。 例如,1天等于24小时,1.05天相当于25小时12分钟。 以下是可用的格式类型:
说明
- 常规:默认格式按原样显示数字,没有任何特定格式。
- Duration1:显示以分钟和秒为单位的持续时间值,如“mm:ss”。输入到值属性的数字将被视为天数。
- 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”。
- 文本:将文本值格式化为纯文本,例如“@”(不应用特定格式)。