如何在xsl中指定excel文件的列类型

如何在xsl中指定excel文件的列类型,excel,xml,xslt,xslt-2.0,xsl-fo,Excel,Xml,Xslt,Xslt 2.0,Xsl Fo,我们有一个XSL文件,它以XML(XML中的数据是动态的,取决于客户)作为输入,并生成一个Excel文件,客户下载并填写该文件,然后上传回。 其中一列是客户Id,如果客户输入的数字超过15位或更多,它将变为科学符号。 我知道客户可以在excel中格式化列并将其更改为文本,这将解决问题。 但是有没有一种方法可以在XSL中指定列类型,这样当客户下载示例Excel文件时,将已经应用格式列为text设置,而不是客户手动执行。 这是XML电子表格(2003)中的一个示例,其中ss:Type=“String

我们有一个
XSL文件
,它以
XML
(XML中的数据是动态的,取决于客户)作为输入,并生成一个Excel文件,客户下载并填写该文件,然后上传回。 其中一列是
客户Id
,如果客户输入的数字超过15位或更多,它将变为科学符号。 我知道客户可以在excel中格式化列并将其更改为文本,这将解决问题。 但是有没有一种方法可以在XSL中指定列类型,这样当客户下载示例
Excel
文件时,将已经应用格式列为
text
设置,而不是客户手动执行。

这是XML电子表格(2003)中的一个示例,其中ss:Type=“String”

这就是你的意思吗

<Worksheet ss:Name="Sheet1">
  <Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="1" x:FullColumns="1"
   x:FullRows="1" ss:DefaultRowHeight="15">
   <Column ss:AutoFitWidth="0" ss:Width="69"/>
   <Column ss:StyleID="s62" ss:Width="60.75"/>
   <Row>
    <Cell><Data ss:Type="Number">1.23456789123456E+17</Data></Cell>
    <Cell><Data ss:Type="String">123456789123456789</Data></Cell>
   </Row>
  </Table>

1.23456789123456E+17
123456789123456789