+ -
当前位置:首页 → 问答吧 → 求教一个XSLT的问题

求教一个XSLT的问题

时间:2010-11-27

来源:互联网

请教XML高手大大一个问题:
我有一个用EXCEL生成的XML文件,其中有一个单元格是用公式计算(代码红字处,ss:Formula="=RC[-1]*RC[-2]),请问写XSLT应该怎么样才能取得该处的真实值啊!
<Worksheet ss:Name="Sheet1">
  <Table ss:ExpandedColumnCount="5" ss:ExpandedRowCount="14" x:FullColumns="1"
  x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
  <Column ss:StyleID="s62" ss:AutoFitWidth="0"/>
  <Column ss:AutoFitWidth="0" ss:Width="95.25"/>
  <Column ss:AutoFitWidth="0" ss:Width="86.25"/>
  <Column ss:AutoFitWidth="0" ss:Width="98.25"/>
  <Column ss:AutoFitWidth="0" ss:Width="69.75"/>
  <Row ss:StyleID="s62">
  <Cell ss:StyleID="s66"><Data ss:Type="String">序号</Data></Cell>
  <Cell ss:StyleID="s66"><Data ss:Type="String">项目名称</Data></Cell>
  <Cell ss:StyleID="s66"><Data ss:Type="String">例数</Data></Cell>
  <Cell ss:StyleID="s66"><Data ss:Type="String">单价</Data></Cell>
  <Cell ss:StyleID="s67"><Data ss:Type="String">总金额</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">1</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="24.75">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">2</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">3</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">4</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">5</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">6</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">7</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">8</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">9</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  <Row ss:AutoFitHeight="0" ss:Height="27">
  <Cell ss:StyleID="s66"><Data ss:Type="Number">10</Data></Cell>
  <Cell ss:StyleID="s63"/>
  <Cell ss:StyleID="s69"/>
  <Cell ss:StyleID="s68"/>
  <Cell ss:StyleID="s64" ss:Formula="=RC[-1]*RC[-2]"><Data ss:Type="Number">0</Data></Cell>
  </Row>
  </Table>
 </Worksheet>

作者: yinmoo82   发布时间: 2010-11-27

只能先取出 RC[-1]*RC[-2],然后再分析RC[-1]和RC[-2]分别对应于 xml的中的哪个元素的值,然后再做乘法

作者: kaleon   发布时间: 2010-11-29