s属性は237に等しいことを示し、xlsxファイルに含まれるstyles.xmlファイルの親要素にある237番目の要素を指します。
セルの値が日付の場合、要素は次のコードのようになります
<xf numFmtId="167"
fontId="6"
fillId="0"
borderId="6"
xfId="3"
applyNumberFormat="1"
applyFont="1"
applyFill="1"
applyBorder="1"
applyAlignment="1">
<alignment horizontal="center"/>
</xf>
この時点では、このセルが日付型を表していることはわかりません。これを理解するには、「167」をキーとして<numFmtId>を見つける必要があります。
この値は、styles.xmlファイルの先頭にあります。
<numFmts count="7">
<numFmt numFmtId="164" formatCode="[$-409]d\-mmm\-yy;@"/>
<numFmt numFmtId="165" formatCode="0.000"/>
<numFmt numFmtId="166" formatCode="0.0"/>
<numFmt numFmtId="167" formatCode="[$-409]d\-mmm\-yyyy;@"/>
<numFmt numFmtId="168" formatCode="0.0%"/>
<numFmt numFmtId="169" formatCode="00000"/>
<numFmt numFmtId="170" formatCode="0.0000"/>
</numFmts>
numFmtId = "167"の行は、セルの値が次の文字列 "[$ -409]d-mmm-yyyy;@"を使用してフォーマットされた日付であることを示しています。
履歴書では、セルに数値または日付が含まれているかどうかを確認するには、
- <c>要素のS(= style)属性を見つけます
- xlsxファイルのstyles.xmlファイルで<xf>要素のnumFmtId属性を見つけます。
- キーとしてnumFmtIdを持つ<numFmt>のformatCode属性を見つけます
- 形式が日付形式か数値形式かを確認する
それが他の人を助けることができることを願っています。