ClosedXml "display value" 和 "real value"

ClosedXml "display value" and "real value"

我不确定 Excel (xlsx) 文件中是否有这样的东西,但是如果你看到截图

我可以输入特定格式的值,单元格中显示的内容与公式栏不同。

但是如果我使用 ClosedXml 创建 Excel,

currentCell.Value = "1-Jan-2017";
currentCell.DataType = XLCellValues.DateTime;

代码生成的文件看起来像(只看到最后一个单元格)

有什么方法可以使用 ClosedXml 来实现我需要的吗?我们的业务人员喜欢看到值“1-Jan-2017”。

该格式似乎是 Excel 中预定义日期格式的第 15 位(参见 here)。您可以使用以下设置

currentCell.Style.DateFormat.SetNumberFormatId(15);

对于其他(未预定义的)格式,您也可以使用

currentCell.Style.DateFormat.SetDateFormat("d-mmm-yy");