You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel中COUNTIFS结合OR条件计数异常及扩展统计需求

Excel COUNTIFS 条件统计问题解决方案

一、原公式无效的原因

你用的=COUNTIFS(A:A; 1; B:B; OR(B=3;B=4;B=5))返回0,是因为COUNTIFS的条件参数不支持直接嵌套OR函数。OR在这里会返回单个全局逻辑值(TRUE/FALSE),而不是对B列每个单元格逐一判断,导致无法匹配到符合条件的行。

二、解决第一个统计需求(A=1且B为3/4/5)

给你两种实用的公式:

方法1:拆分COUNTIFS相加(直观易读,兼容所有Excel版本)

把B列的三个条件拆成三个独立的COUNTIFS,结果相加:

=COUNTIFS(A:A;1;B:B;3)+COUNTIFS(A:A;1;B:B;4)+COUNTIFS(A:A;1;B:B;5)

方法2:用SUMPRODUCT处理数组判断(适合条件较多的场景)

通过数组逻辑判断一次性匹配所有条件:

=SUMPRODUCT((A:A=1)*(ISNUMBER(MATCH(B:B,{3,4,5},0))))
  • MATCH(B:B,{3,4,5},0):判断B列单元格是否在{3,4,5}集合中,存在则返回位置,否则返回错误值
  • ISNUMBER(...):把上述结果转为TRUE/FALSE(存在为TRUE,即1;不存在为FALSE,即0)
  • (A:A=1):判断A列是否等于1,同样返回1或0
  • SUMPRODUCT会把所有符合条件的1相加,得到总行数

三、新增列含"a"的统计需求(假设新增列为C列)

如果要同时满足:A=1、B为3/4/5、C列包含字符"a",可以用以下方法:

方法1:拆分COUNTIFS相加

=COUNTIFS(A:A;1;B:B;3;C:C;"*a*")+COUNTIFS(A:A;1;B:B;4;C:C;"*a*")+COUNTIFS(A:A;1;B:B;5;C:C;"*a*")
  • "*a*"是通配符,代表单元格内容包含"a"(不区分前后字符)

方法2:SUMPRODUCT扩展逻辑

=SUMPRODUCT((A:A=1)*(ISNUMBER(MATCH(B:B,{3,4,5},0)))*(ISNUMBER(SEARCH("a",C:C))))
  • SEARCH("a",C:C):在C列单元格中查找"a",找到则返回位置,否则返回错误值(不区分大小写;如果要区分大小写,替换为FIND("a",C:C))
  • 三个条件相乘,只有同时满足时结果为1,SUMPRODUCT累加得到符合条件的行数

内容的提问来源于stack exchange,提问作者Yokanishaa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 08:50:36