COUNTIFS函数多条件OR逻辑计数结果不符预期求助
解决COUNTIFS多条件OR计数错误的问题
嘿,我知道你为啥这个COUNTIFS公式返回的结果不对啦!
你写的公式:
=COUNTIFS([Category2],"Account Management",[VA/NVA/NNVA/D],{"NVA","NNVA"})
其实存在一个逻辑误区:当你在COUNTIFS里用数组{"NVA","NNVA"}作为条件时,Excel会分别计算两个独立的COUNTIFS结果——也就是先统计「Category2是Account Management且VA列是NVA」的数量,再统计「Category2是Account Management且VA列是NNVA」的数量。但Excel默认只会显示数组的第一个结果(也就是你看到的5),而不会自动把两个结果相加,这就是为什么实际正确结果是39,而你只得到了5。
下面给你几种靠谱的解决方法:
方法1:拆分COUNTIFS后相加(最直观)
直接把两个条件的计数分开计算,再求和,逻辑清晰,也容易排查问题:=COUNTIFS([Category2],"Account Management",[VA/NVA/NNVA/D],"NVA") + COUNTIFS([Category2],"Account Management",[VA/NVA/NNVA/D],"NNVA")方法2:用SUMPRODUCT实现AND+OR逻辑
SUMPRODUCT可以通过数组运算实现复杂的多条件组合,这里的加号代表OR,乘号代表AND:=SUMPRODUCT(([Category2]="Account Management")*(([VA/NVA/NNVA/D]="NVA")+([VA/NVA/NNVA/D]="NNVA")))原理是:每一行的条件会转换成1(满足)或0(不满足),乘号确保必须同时满足Category2的条件,加号则满足VA列两个条件中的任意一个,最后SUMPRODUCT把所有符合条件的行的数值相加。
方法3:Excel 365/2021专属:SUM包裹数组结果
如果你用的是支持动态数组的Excel版本,直接用SUM把COUNTIFS返回的数组结果求和就行:=SUM(COUNTIFS([Category2],"Account Management",[VA/NVA/NNVA/D],{"NVA","NNVA"}))这样Excel会计算出两个条件的计数结果,再自动求和得到39。
内容的提问来源于stack exchange,提问作者stephenp
相关产品推荐
相关产品推荐

