将XML转换为MS Excel XML - 公式语法

时间:2013-02-03 11:16:03

标签: xml xslt excel-formula

我正在转换一些XML以在MS Excel中查看。有关如何创建架构的非常好的参考 - http://msdn.microsoft.com/en-us/library/aa140066(v=office.10).aspx。这个blog也很有用。

我在将公式插入单元格时遇到问题,因此:     <Cell ss:Index="2" ss:Formula="=SUM(R[-3]C[0]:R[-1]C[0])">          <Data ss:Type="Number"></Data>        </Cell> 很简单。这会将上面第3行中的值与上面第1行相加。

但是,我需要的公式(A1格式,而不是R1C1)是 =SUMIF(A:A,"Assignments",B:B)

我尝试了很多选项,包括

  • ss:Formula="=SUMIF(C[-1]:C[-1],Assignments,C[0]:C[0])"但在这种情况下,单元格的定义等于 =SUMIF(A:A,Assignments,B:B)

  • ss:Formula="=SUMIF(C[-1]:C[-1],"Assignments",C[0]:C[0])"但工作簿已损坏且无法打开。

  • ss:Formula="=SUMIF(C[-1]:C[-1],'Assignments',C[0]:C[0])"但在这种情况下,单元格的定义等于 0

引号导致问题。有没有人知道将所需的公式插入单元格的正确语法?

1 个答案:

答案 0 :(得分:4)

答案是要注意XML文档转义字符。 What characters do I need to escape in XML documents?

所需代码中的行是:

ss:Formula="=SUMIF(C1:C1, &quot;Assignments&quot;,C[0]:C[0])"