excel - 如何在 VBA Sub 中应用 SumIf 公式?出现错误 1004

标签 excel vba excel-formula

我正在尝试创建一个在单元格中放置 SUMIF 公式的 Sub。我已将问题简化为简单的设置:

Private Sub CommandButton1_Click()
Cells(2, 3).Formula = "=SUMIF(A1:A5;D1;B1:B5)"
End Sub

Picture of the spreadsheet [http://i.imgur.com/qVSoDkvm.png]

我收到 1004 错误

我可以运行相同的代码,但使用 SUM 函数:

"=SUM(B1:B5)"

这不会产生错误。因此我怀疑公式中的分号。

最佳答案

.Formula 接受英文公式。
参数分隔符英文为,

如果您想使用 Excel 安装语言的公式,请使用 .FormulaLocal

但是,为了确保您的代码可以在任何 Excel 上运行,请修复您的公式,使其符合 en-us 区域设置。

关于excel - 如何在 VBA Sub 中应用 SumIf 公式?出现错误 1004,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33540794/

相关文章:

java - 用 apache poi 写旧日期

vba - Excel VBA .Find函数在选择中改变值

vba - Excel VBA 宏,复制行中的第一个值

excel - 地址上方首次使用的单元格

excel - 用于学习 Excel 中的 VBA 编程的资源(针对完整的编程新手)

vba - 在 VBA 中获取最后一个单元格的问题

arrays - Excel VBA : Populating Staggered Ranges with 2d Array data

excel - 将值连接在一起的公式

excel - 如何使用[left] [Right]分割大于2的逗号分隔值?

excel - 根据 Excel 单元格中的数据造句