范围(…).Formula不完全翻译
我无法弄清楚这一点。
我们主要使用法语版Excel(因为我们住在加拿大法语省)。 在VBA代码中,我直接设置了单元格的公式。 通常情况下,我们必须用英文编写公式,Excel进行翻译(据我所知,在VBA中用英文以外的其他语言编写公式会导致错误)。 然而,只有这个方程式的一半被翻译,我认为是造成我的问题(写在另一个单元格中的正确公式产生不同的结果,最有可能是正确的结果)。
range("J2").Formula = "=round(IF(F2="",0,F2),2)-round(IF(G2="",0,G2),2)"
在单元格中被翻译成这个:
=ARRONDI(SI(F2=",0,F2),2)-round(IF(G2=",0,G2),2)
正如你所看到的,正确的部分应该是“ARRONDI(SI(..”),但它不是这样读取的,我尝试了添加空格,完全删除减号等,没有任何工作,总是翻译一半。 ?
在VBA你neexd逃避你的报价是这样的:
range("J2").Formula = "=round(IF(F2="""",0,F2),2)-round(IF(G2="""",0,G2),2)"
这是因为"
字符在VBA中用作string的开始/结束,所以如果你不想把它包含在一个string中,你需要连续input两次。