4

当我尝试在 Excel 中使用 VBA 制作动态公式时,我收到此错误消息。

这条线很好:

ActiveCell.Value = "IF(SUM(" & Range("A1:A5").Address & ")*0,1>" & Range("B1").Address & ";" & Range("C1").Address & ";SUM(" & Range("A1:A5").Address & ")*0,1)*-1"

如果我像这样在我的 IF 语句前面添加 =,我会收到错误消息。

ActiveCell.Value = "=IF(SUM(" & Range("A1:A5").Address & ")*0,1>" & Range("B1").Address & ";" & Range("C1").Address & ";SUM(" & Range("A1:A5").Address & ")*0,1)*-1"

如果我只是在测试第一个代码后添加 = 符号。它在excel中运行良好。我在这里做错了什么?

不要介意范围和东西。它们只是使示例与我的代码尽可能相似的占位符。

4

1 回答 1

10

要在单元格中输入公式,您必须使用.Formula属性而不是.Value.

尝试这个

ActiveCell.Formula = "=IF(SUM(" & Range("A1:A5").Address & ")*0,1>" & Range("B1").Address & ";" & Range("C1").Address & ";SUM(" & Range("A1:A5").Address & ")*0,1)*-1"

于 2013-11-13T20:00:36.097 回答