Excel中sum(a1:a2+a3)与sum(a1:a2)+a3计算逻辑咨询
Excel中
SUM(A1:A2+A3)的运算规则说明 两个公式的计算逻辑完全不同,SUM(A1:A2+A3)的实际执行遵循Excel的运算优先级和数组运算规则,等价形式和执行步骤如下:
- 运算优先级判定:SUM函数的参数如果包含算术运算符,会先执行参数内部的算术运算,再执行外层的SUM汇总。
- 内部加法的数组运算逻辑:
A1:A2+A3是同维度匹配的数组计算,会把A1:A2连续区域内的每一个单元格,分别和A3单元格的值相加,生成一个和原区域尺寸一致的中间结果数组:{A1+A3, A2+A3} - 外层SUM汇总:SUM函数会对上述中间数组的所有值求和,最终等价于公式
=SUM(A1+A3, A2+A3),展开后的算术式为A1 + A2 + 2*A3
数值验证示例:
当A1=1、A2=2、A3=3时:
- 正确写法
SUM(A1:A2)+A3结果为 (1+2)+3 = 6- 误用写法
SUM(A1:A2+A3)结果为 (1+3)+(2+3) = 9,比预期结果正好多算了一次A3的值,和推导逻辑完全匹配。
补充说明:这个写法不会触发Excel的公式报错,在支持动态数组的新版Excel中直接回车就会按上述逻辑计算,旧版Excel按数组公式组合键确认后也会得到相同结果,属于非常隐蔽的公式错误。
内容的提问来源于stack exchange,提问作者Boringdoingexcel
相关产品推荐
相关产品推荐

