You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VBA中SUM(SUMIF多条件求和报错1004及结果异常问题

VBA中SUM(SUMIF多条件求和的错误解决方法

解决Run-time error 1004错误

原FormulaR1C1代码的问题出在引用区域的语法顺序错误:R1C1样式中,区域的写法是R[行号]C[列号]:R[行号]C[列号],你把central!C[1]R3的行和列顺序写反了,导致Excel无法识别引用区域。

修正后的代码:

Worksheets("units").Cells(i, j).FormulaR1C1 = "=pws!R[0]C[0]+SUM(SUMIF(pws!R1C3:R1C" & (2 + numlxp) & ",central!R3C[1]:R" & (2 + numatt) & "C[1],pws!R[0]C3:R[0]C" & (2 + numlxp) & "))"

解决隐式交集@导致返回0的问题

在Excel动态数组版本中,直接用.Formula赋值数组公式时,Excel会自动添加@隐式交集,把数组运算降级为单个单元格引用,所以返回0。

解决方法是改用.FormulaArray属性赋值,强制设置为数组公式:

Worksheets("units").Cells(2, 2).FormulaArray = "=SUM(SUMIF(pws!C1:L1,central!C3:C6,pws!C2:L2))"

旧版本Excel中,数组公式需要手动按Ctrl+Shift+Enter,VBA里同样用.FormulaArray来实现这一效果。

内容的提问来源于stack exchange,提问作者CK7

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 04:40:18