Excel中的国际macros

我正在尝试创build一个国际Excelmacros表。 这些macros应该适用于很多国家

我使用Range.formula编写英文公式,但它不适用于所有公式(?)

例如,我创build

 Range("D4").Formula = "=SUM(D7:D14)" 

在西class牙语Excel中,它的作用是充满“ =SUMA(D7:D14) ”。 是正确的

其他公式失败,例如:

 "=IF(R2=8;D7;D6)" 'In Spanish Excel I get error 1004 "=ISNUMBER(O2)" works =ESNUMERO(O2) "=PRODUCT(O2;O3)" Does not work, error 1004 

我与Excel 2010和Windows 7,我不明白这个奇怪的行为。 参数对所有公式均有效

有任何想法吗?

Range.Formula期望英文公式符号。 这不仅意味着英文函数名称,而且还使用逗号分隔参数而不是分号。

所以

...Formula = "=IF(R2=8,D7,D6)"

...Formula = "=PRODUCT(O2,O3)"

应该pipe用。