如何用Excel内置函数实现多列双条件的SUMMEWENN求和?
Excel多条件同时匹配求和问题
我有一个简单的数据表,希望仅当每行两列中的两个条件同时匹配时,对对应数值求和。数据表示例包含月份、应用程序、令牌使用量三列数据。
仅满足单个条件(月份或应用程序)的求和可正常运行:
=SUMMEWENN($C$2:$E$16;H2;$E$2:$E$16)
结果:可得到对应月份的令牌使用量
现在希望按产品细分月度使用量,例如统计月份“Jänner”中产品“AutoCAD”的令牌使用量,尝试了以下方法但都不符合预期:
- 使用
AND函数的写法:
结果:返回0,无法得到正确值=SUMMEWENN($C$2:$E$16;AND(H2;D2);$E$2:$E$16) =SUMMEWENN($C$2:$E$16;AND("Jänner";"AutoCAD");$E$2:$E$16) - 使用数组的写法:
结果:触发语法错误=SUMMEWENN($C$2:$E$16;{H2;D2};$E$2:$E$16) =SUMMEWENN($C$2:$E$16;{H2,D2};$E$2:$E$16) - 两个单条件求和相加:
结果:返回26,是两个条件单独求和的总和,并非同时满足两个条件的结果=SUMMEWENN($C$2:$E$16;H2;$E$2:$E$16)+SUMMEWENN($C$2:$E$16;D2;$E$2:$E$16)
期望结果:得到同时匹配指定月份和应用程序的令牌使用量总和。
解决方案
可以通过以下两种Excel内置函数实现需求:
方法1:使用SUMMEWENNS(多条件求和函数)
这是专门针对多条件求和的函数,语法清晰直接:
=SUMMEWENNS($E$2:$E$16; $C$2:$C$16; H2; $D$2:$D$16; D2)
参数说明:
$E$2:$E$16:需要求和的令牌使用量区域$C$2:$C$16:第一个条件对应的区域(月份列)H2:第一个匹配条件(目标月份)$D$2:$D$16:第二个条件对应的区域(应用程序列)D2:第二个匹配条件(目标应用程序)
方法2:使用数组公式(旧版Excel需按Ctrl+Shift+Enter确认)
如果受限于Excel版本无法使用SUMMEWENNS,可以用数组形式的SUMME配合条件判断:
=SUMME(($C$2:$C$16=H2)*($D$2:$D$16=D2)*$E$2:$E$16)
逻辑说明:
($C$2:$C$16=H2)和($D$2:$D$16=D2)分别生成布尔数组,符合条件的行返回TRUE(等价于1),不符合则返回FALSE(等价于0)- 两个数组相乘后,只有同时满足两个条件的行结果为1,再乘以对应行的令牌数,最后通过
SUMME求和即可得到目标值
内容的提问来源于stack exchange,提问作者cheese steak jimmy's
相关产品推荐
相关产品推荐

