Excel满足多个可选条件的多列求和公式使用问题咨询
Excel多条件求和公式错误修正方案
错误原因
OR函数无法为FILTER提供逐行判断的布尔数组,它会将所有行的判断结果合并为单个TRUE/FALSE值,导致行筛选逻辑完全失效。
修复后公式(支持Excel 365/2021及以上版本)
SUM(FILTER(FILTER($B$3:$E$2965,$B$1:$E$1=2020),($A$3:$A$2965=4142)+($A$3:$A$2965=4143)))
逻辑说明
- 第一层
FILTER先筛选出第一行标注为2020的对应数据列,缩小计算范围 - 第二层
FILTER的行筛选条件用(条件1)+(条件2)替代OR函数:Excel中TRUE等价于1、FALSE等价于0,满足任意一个条件时计算结果为1/2(均被FILTER识别为TRUE),两个条件都不满足时结果为0(被识别为FALSE),刚好实现逐行判断“业务代码为4142或4143”的逻辑 - 最外层SUM对符合所有条件的数值求和
旧版Excel兼容方案
如果使用不支持FILTER函数的Excel版本,可改用SUMPRODUCT实现:
=SUMPRODUCT($B$3:$E$2965*($B$1:$E$1=2020)*(($A$3:$A$2965=4142)+($A$3:$A$2965=4143)))
内容的提问来源于stack exchange,提问作者spenc044
相关产品推荐
相关产品推荐

