用C#双引号的Excel公式

我想用C#中的SpreadSightLight在Excel单元格中编写一个公式。 我在Excel中有一个下面的公式

=COUNTIFS(Sheet2!E:E, D2, Shet2!A:A, ">0") 

在代码中看起来

 "=COUNTIFS({0}!E:E,{1},{0}!A:A ,\">0\")"; 

我从代码保存文件,但是当我尝试打开文件Excel(2013)给出了错误消息,公式被删除

已删除logging:来自/xl/worksheets/sheet3.xml部分的公式

和sheet3.xml包含以下行

 COUNTIFS(Sheet2!E:E, D2, Sheet2!A:A ,">0") 

我试着逐字string和char(34)的解决scheme,但也导致相同的错误。

我怎么解决这个问题? 提前致谢。

我没有find为什么不能把双引号写入excel公式的原因。 但是有一个避免双引号的解决scheme:

stringformula =“= COUNTIFS({0}!E:E,{1},{0}!A:A,CONCATENATE(CHAR(62),CHAR(48)))”;

如果有人遇到这个线索,我相信问题是大于号。 它与XML中的结束标记混淆。 所以需要用&gtreplace(就像你说的sheet3.xml包含的那样)。 我认为双引号是正确的,因为你有它们 – 用前面的反斜杠进行转义。