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

如何使用COUNTIFS实现多条件计数(排除含FREE的$J:$J列单元格)

解决COUNTIFS多条件计数中排除包含特定文本的问题

看起来你在使用COUNTIFS进行多条件计数时遇到了两个头疼的问题:公式无法正常生效,以及通配符星号保存后莫名消失。我来帮你拆解问题原因和解决办法:

问题核心:错误的不等于运算符

你公式里针对J列的条件写了"!*FREE*",这是关键错误。在Excel的COUNTIF/COUNTIFS函数中,要排除包含特定文本的单元格,得用<>(不等于运算符),而不是!。!在Excel里是用来分隔工作表和单元格引用的(比如Sheet1!A1),根本不是条件判断里的不等于符号。

星号消失的根源

当你输入"!*FREE*"时,Excel会错误解析这个条件——它把!当成了引用符号,导致后面的星号无法被识别为通配符,最终保存后星号就被忽略消失了。换成<>后,引号里的内容会被正确识别为文本条件,星号就能正常保留了。

修正后的COUNTIFS公式

把J列的条件改成"<>*FREE*",完整公式如下:

=COUNTIFS(Results!$C:$C,$A$2,Results!$B:$B,A34,Results!$H:$H,$F$6,Results!$J:$J,"<>*FREE*")

替代方案:用SUMPRODUCT规避通配符问题

如果你还是碰到通配符的兼容问题,可以试试SUMPRODUCT函数,逻辑更直观,也不容易出解析错误:

=SUMPRODUCT(--(Results!$C:$C=$A$2),--(Results!$B:$B=A34),--(Results!$H:$H=$F$6),--(ISERROR(SEARCH("FREE",Results!$J:$J))))

这个公式的逻辑是:

  • 每个--(条件)把布尔值(TRUE/FALSE)转换成1/0
  • SEARCH("FREE", J列)会查找包含FREE的单元格,找不到就返回错误
  • ISERROR把错误转为TRUE(也就是不包含FREE的单元格),最后所有条件相乘后求和,得到符合所有要求的计数

快速验证小技巧

你可以先单独测试J列的排除条件:

=COUNTIF(Results!$J:$J,"<>*FREE*")

确认这个公式能正确统计J列不包含FREE的单元格数量后,再把其他条件加回COUNTIFS里,这样更容易定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:03:40