在 ClosedXML.Excel C# 中将列格式更改为货币
Change column format to currency in ClosedXML.Excel C#
我创建 System.Data.DataTable
并使用 ClosedXML.Excel
将数据放入 Excel
System.Data.DataTable table = GetTable();
XLWorkbook wb = new XLWorkbook();
var ws = wb.Worksheets.Add("Acompanhamento - Cultura");
ws.FirstCell().InsertTable(table, false);
var range = ws.RangeUsed();
问题是我有一些字符串形式的列,其值类似于 $20000 或 R$10000(货币在变化),我不知道如何为这些列设置货币类型而不丢失有关货币的信息。
感谢您的帮助。
在我创建的 table 中,我添加了一个带有 currencyID 的列,以及一个只有数字的列,没有关于货币的信息,这个 table 我添加到一个 Excel,并且后来在循环中我逐行检查什么是货币 ID 并格式化单元格
ws.Cell(j, i).Style.NumberFormat.Format = ws.Cell(j, i).Value.ToString() != "" ? Convert.ToInt16(ws.Cell(j, (i-1)).Value) == 2 ? " [$R$-pt-BR]#,##0.00" : "[$$-en-US] #,##0.00" : "";}
其中 ws.Cell(j, i)
是具有值(数字)的单元格,ws.Cell(j, (i-1))
是具有货币 ID 的单元格
我创建 System.Data.DataTable
并使用 ClosedXML.Excel
System.Data.DataTable table = GetTable();
XLWorkbook wb = new XLWorkbook();
var ws = wb.Worksheets.Add("Acompanhamento - Cultura");
ws.FirstCell().InsertTable(table, false);
var range = ws.RangeUsed();
问题是我有一些字符串形式的列,其值类似于 $20000 或 R$10000(货币在变化),我不知道如何为这些列设置货币类型而不丢失有关货币的信息。
感谢您的帮助。
在我创建的 table 中,我添加了一个带有 currencyID 的列,以及一个只有数字的列,没有关于货币的信息,这个 table 我添加到一个 Excel,并且后来在循环中我逐行检查什么是货币 ID 并格式化单元格
ws.Cell(j, i).Style.NumberFormat.Format = ws.Cell(j, i).Value.ToString() != "" ? Convert.ToInt16(ws.Cell(j, (i-1)).Value) == 2 ? " [$R$-pt-BR]#,##0.00" : "[$$-en-US] #,##0.00" : "";}
其中 ws.Cell(j, i)
是具有值(数字)的单元格,ws.Cell(j, (i-1))
是具有货币 ID 的单元格