使用Office Open Xml SDK以编程方式在Excel表格中格式化date

我正在使用Office Open XML SDK构build一个Excel xlsx电子表格。 我可以通过将date转换为他们的“AO”date表示forms并将单元格值设置为数字来将date添加到表单中。 但是,我不能弄清楚如何将dd-mm-yy格式添加到单元格中。

我已经看到很多复杂的例子,你必须从头开始创build一个样式表,然后添加格式,然后引用这个格式,但是我认为必须有一个更简单的方法。 我从一个模板创build我的工作表,并且Excel已经内置格式/样式。 国际海事组织我应该能够加载从我用作模板的Excel文件中的样式表,然后应用格式。 不知道如何做到这一点。

如果您从头开始创buildxlsx,则无法避免创build样式表。 你最低限度需要一个样式表和单元格格式元素。 单元格格式元素可以引用一个内置的date格式,在这种情况下,您可以避免使用自定义数字格式,但是如果您希望date格式不是内置的,则您也需要一个数字格式元素。

如果您是从模板xlsx创build一个xlsx,那么您可以引用已定义的单元格格式,但由于引用仅基于索引,因此您可以更加安全地查看已定义的单元格格式以查找一个匹配你想要的date格式,而不是硬编码的单元格格式索引。

试试这个 – 我尝试制作自己的数字格式时使用了它。 这是一个很好的例子: Excel中的高级样式OpenXML

你仍然需要创build一个样式表,但这是一个非常好的开始。 在他演示可以做什么的时候,他有不less风格。 如果你只想要一种格式,你的样式表可能会更简单。

也快速看看这个post中的列表。 您的格式可能已经内置到Excel中。 内置Excel的样式