我正在分析一个 OpenXML Excel 文件。我检查了styles.xml,我发现很多这样的条目:
<xf numFmtId="0" [..]>
但是,styles.xml 文件中根本没有<numFmt>元素。在这种情况下,如何确定该样式的数字格式?
如果用户应用自定义数字格式,则styles.xml文件将包含numFmt带有 anumFmtId和的元素formatCode:
<numFmts count="1">
<numFmt
numFmtId="165"
formatCode="0.000"/>
</numFmts>
然后numFmtId在<xf>元素中使用 来引用数字格式。
但是,如果用户应用标准或内置格式,0.00则numFmt不会写入元素。该<xf>元素仍然包含 anumFmtId但它指的是未存储在文件中的内置格式。
小于 164(但通常在 0-50 范围内)的数字格式 id 表示内置格式。
以下是XlsxWriter 文档中一些内置格式的列表。