使用Office Open Xml SDK以编程方式格式化Excel工作表中的日期

时间:2011-02-09 14:54:25

标签: excel openxml

我正在使用office open XML SDK构建Excel xlsx电子表格。我可以通过将日期转换为“AO”日期表示并将单元格值设置为数字来向表单添加日期。但是,我无法弄清楚如何将dd-mm-yy格式添加到单元格中。

我看过很多复杂的例子,你必须从头开始创建一个样式表,添加格式然后引用那个格式,但我认为必须有一个更简单的方法。我正在从模板创建工作表,Excel已经内置了格式/样式。 IMO我应该能够从我用作模板的excel文件加载样式表,然后应用格式。虽然无法弄清楚如何做到这一点。

2 个答案:

答案 0 :(得分:1)

如果您从头开始创建xlsx,则无法避免创建样式表。您至少需要样式表和单元格格式元素。单元格格式元素可以引用内置日期格式,在这种情况下,您可以避免使用自定义数字格式,但如果您需要非内置日期格式,则还需要数字格式元素。

如果您正在从模板xlsx创建xlsx,那么您可以引用已定义的单元格格式,但它可能非常敏感,因为引用仅基于索引,因此您可以更安全地查看已定义的单元格格式,以找到与您想要的日期格式匹配的格式,而不是硬编码单元格格式索引。

答案 1 :(得分:0)

试试这个 - 我在尝试制作自己的数字格式时使用过它。这是一个很好的例子: Advanced Styling in Excel OpenXML

您仍然需要创建样式表,但这是一个非常好的起点。他演示了可以做的事情,他有很多风格。如果您只想要一种格式,那么您的样式表会更简单。

同时快速浏览一下这篇文章中的列表。您的格式可能已内置到Excel中。 Built in Styles for Excel