Excel で値を数値としてフォーマットする方法を理解する方法は、Excel 自体に問い合わせることです。または、Excel で空白のワークシートを開き、フィールドに値を入力し、形式は数値として、ワークシートを Xml スプレッドシート 2003 形式で保存します。次に、メモ帳などでファイルを開いて、実際に何が行われたかを確認します。
この場合、おそらく次のように、Excel がStyle要素を追加したことがわかります。
<Style ss:ID="s62">
<NumberFormat ss:Format="Fixed"/>
</Style>
または多分このように(数値をフォーマットする方法はたくさんあります)
<Style ss:ID="s63">
<NumberFormat ss:Format="#,##0.00"/>
</Style>
次に、表のセルのスタイルを参照し、データの正しい型を設定するだけです。そのようです
<Row>
<Cell ss:StyleID="s62"><Data ss:Type="Number">123</Data></Cell>
</Row>
<Row>
<Cell ss:StyleID="s63"><Data ss:Type="Number">1233</Data></Cell>
</Row>
Style要素は、上記のWorksheet要素の前にある親Stylesに配置する必要があることに注意してください。このようなもの、おそらく...
<xsl:template match="/*">
<Styles>
<Style ss:ID="Default" ss:Name="Normal">
<Alignment ss:Vertical="Bottom"/>
<Borders/>
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/>
<Interior/>
<NumberFormat/>
<Protection/>
</Style>
<Style ss:ID="s62">
<NumberFormat ss:Format="Fixed"/>
</Style>
<Style ss:ID="s63">
<NumberFormat ss:Format="#,##0.00"/>
</Style>
</Styles>
<Worksheet>
<xsl:attribute name="ss:Name">
<xsl:value-of select="local-name(/*/*)" />
</xsl:attribute>
<Table x:FullColumns="1" x:FullRows="1">
<Row>
<xsl:for-each select="*[position() = 1]/*">
<Cell>
<Data ss:Type="String">
<xsl:value-of select="local-name()" />
</Data>
</Cell>
</xsl:for-each>
</Row>
<xsl:apply-templates/>
</Table>
</Worksheet>
</xsl:template>