我正在尝试通过COM Interop以编程方式填充Excel 2010单元格,并使用表示IF公式的字符串。
以下代码行正常工作,它在Excel中解析为值4:
.Range("C10").Value = "=2+2"
但是当我传递IF-Formula(作为String)时......
.Range("C11").Value = "=IF(1+1=2;2;0)"
...我遇到COMException
,说:Exception from HRESULT: 0x800A03EC
。
如果我直接在Excel中输入相同的IF公式,则会正确解析。
感谢您的帮助!
克里斯
答案 0 :(得分:3)
您应该用逗号替换分号并使用.Formula
代替.Value
.Range("C11").Formula= "=IF(1+1=2,2,0)"