Excel COUNTIF函数使用咨询:排除特定条件单元格的计数方法
解决Excel多条件计数问题:统计符合特定状态的橙子数量
我懂你遇到的坑了——之前用「橙子总数减derp状态数量」的思路方向是对的,但应该是公式没限定范围,不小心把苹果的derp也扣掉了对吧?别慌,咱们用精准的多条件计数就能搞定这个需求。
方法1:用COUNTIFS函数(推荐,Excel 2007+支持)
COUNTIFS是专门处理多条件计数的函数,能帮我们精准锁定「橙子」+「状态符合要求」的条目。
简化版公式(需求等价于统计非derp的橙子)
其实"normal"本身就属于「非derp」,所以你的需求可以简化成统计状态不是derp的橙子数量,公式直接写:
=COUNTIFS(水果列, "橙子", 状态列, "<>derp")
举个实际例子,如果水果在A列,状态在B列,就是:
=COUNTIFS(A:A, "橙子", B:B, "<>derp")
拆分版公式(若需明确区分normal和其他非derp状态)
如果之后你需要更明确地拆分条件(比如统计「normal的橙子」+「除derp外其他状态的橙子」),可以用两个COUNTIFS相加(注意要减去重复计数的normal部分,不过其实和上面结果一致):
=COUNTIFS(A:A, "橙子", B:B, "normal") + COUNTIFS(A:A, "橙子", B:B, "<>derp") - COUNTIFS(A:A, "橙子", B:B, "normal")
当然,这个简化后还是和上面的公式一样,所以日常用第一个就够了。
方法2:用SUMPRODUCT函数(全版本兼容)
如果你的Excel版本比较老,不支持COUNTIFS,用SUMPRODUCT也能实现:
=SUMPRODUCT((A:A="橙子")*(B:B<>"derp"))
原理很简单:每个条件会返回TRUE/FALSE,相乘后自动转成1/0,最后把所有符合条件的1加起来,就是总数。
为什么之前的方法出错?
你之前的问题出在没限定derp的范围——你减的是「所有derp条目数」,这里面包含了苹果的derp,所以结果就错了。正确的思路应该是:
=COUNTIF(A:A, "橙子") - COUNTIFS(A:A, "橙子", B:B, "derp")
这个公式和第一种方法的结果完全一致,只是换了个计算逻辑:用橙子总数减去橙子里的derp数量,同样不会碰苹果的计数。
这样就精准锁定橙子的范围啦,再也不会影响其他水果的统计结果~
内容的提问来源于stack exchange,提问作者Raul
相关产品推荐
相关产品推荐

