Seb*_*ora 2 c# excel closedxml
当我尝试更改整个列的格式时遇到问题。
我的问题是我没有得到 XLCellValues 操作数。我可以选择 XLDataType.Text 但这不起作用。这就是我所拥有的:
eventSheet.Column("A").CellsUsed().SetDataType(XLDataType.Text); 我也试过用 1 替换 A。那样也不走运。它可能是 ClosedXML 包的更新版本吗?谢谢!
该IXLCell.SetDataType方法不会改变显示格式。它只是改变了基础值的类型。要更改显示格式,请使用IXLCell.Style.NumberFormat
例子:
var workbook = new XLWorkbook();
var ws = workbook.Worksheets.Add("Style NumberFormat");
var co = 2;
var ro = 1;
// Using a custom format
ws.Cell(++ro, co).Value = "123456.789";
ws.Cell(ro, co).Style.NumberFormat.Format = "$ #,##0.00";
ws.Cell(++ro, co).Value = "12.345";
ws.Cell(ro, co).Style.NumberFormat.Format = "0000";
// Using a OpenXML's predefined formats
ws.Cell(++ro, co).Value = "12.345";
ws.Cell(ro, co).Style.NumberFormat.NumberFormatId = 3;
ws.Column(co).AdjustToContents();
workbook.SaveAs("StylesNumberFormat.xlsx");
Run Code Online (Sandbox Code Playgroud)
您可以在 ClosedXML wiki 上找到更多信息,例如在https://github.com/ClosedXML/ClosedXML/wiki/Styles-NumberFormat