Excel COUNTIFS 函数 | 保姆级完全教程
多条件计数,一个函数搞定!从入门到精通,一看就懂!
一、COUNTIFS 是干嘛的?
一句话说清楚:COUNTIFS 用来统计同时满足多个条件的数据有多少条。
只有一个条件?用 COUNTIF
两个及以上条件?用 COUNTIFS
举个例子:你有一份销售表,想知道"华北地区、金额大于1万、且已回款"的订单有多少个,COUNTIFS 一行公式搞定!
COUNTIF vs COUNTIFS 对比
重点:COUNTIFS 完全可以替代 COUNTIF,一个条件时写一对范围+条件即可。
二、基础语法拆解
=COUNTIFS(条件范围1, 条件1, 条件范围2, 条件2, ...) 参数说明
核心规则
**条件范围和条件必须成对出现**
**所有条件是"且"的关系**(同时满足才算数)
**条件范围大小必须一致**(行数/列数要相同,否则报#VALUE!错误)
三、条件怎么写?一文搞懂
条件写在英文双引号内,这是新手最容易犯错的地方:
通配符详解
四、从零开始的基础案例
案例1:双条件——统计某个部门的女性人数
公式:
=COUNTIFS(B2:B6, "销售部", C2:C6, "女") 结果:2
解析:同时满足"销售部"且"女"的只有李四和赵六。
案例2:数值范围——统计60到100分之间的人数
公式:
=COUNTIFS(B2:B6, ">=60", B2:B6, "<=100") 结果:3
解析:成绩>=60且<=100的有张三(85)、王五(92)、赵六(60)。
案例3:日期条件——统计某月的订单数
公式(统计3月份的订单):
=COUNTIFS(B2:B5, ">=2026/3/1", B2:B5, "<2026/4/1") 结果:3
解析:日期条件用文本格式写,Excel 会自动识别。
案例4:三条件——统计某地区某产品的已完成订单
公式:
=COUNTIFS(A2:A5, "华北", B2:B5, "A产品", C2:C5, "已完成") 结果:2
解析:三个条件同时满足的只有第1行和第4行。
五、常见用法
用法1:统计某个分数段的人数
=COUNTIFS(成绩列, ">=80", 成绩列, "<90") // 80-89分(良好) =COUNTIFS(成绩列, ">=90", 成绩列, "<=100") // 90-100分(优秀) 用法2:统计某月某类别的数量
=COUNTIFS(日期列, ">=2026/5/1", 日期列, "<2026/6/1", 类别列, "餐饮") 用法3:统计非空且符合条件的数量
=COUNTIFS(部门列, "销售部", 回款列, "<>") // 销售部中已填回款金额的 用法4:配合单元格引用做动态统计
=COUNTIFS(A:A, F1, B:B, ">"&G1) // F1是部门名,G1是金额阈值 六、日常高频坑和解决办法
坑1:条件没加引号
错误写法:
=COUNTIFS(A:A, >60) 正确写法:
=COUNTIFS(A:A, ">60") 原因:条件是文本,必须用英文双引号包裹。但引用单元格时不要加引号。
坑2:条件范围大小不一致
错误写法:
=COUNTIFS(A1:A10, "销售部", B1:B20, "女") 报错:#VALUE!
原因:A1:A10 是10个格子,B1:B20 是20个格子,大小不匹配。
解决:确保所有条件范围的行数/列数完全一致。
坑3:日期条件写法错误
错误写法:
=COUNTIFS(A:A, 2026/3/1) // 这会被算成 2026÷3÷1 = 675.33 正确写法:
=COUNTIFS(A:A, ">=2026/3/1") // 用引号包裹日期文本 或者引用单元格:
=COUNTIFS(A:A, ">="&E1) // E1中填写 2026/3/1 坑4:想用"或"条件,但 COUNTIFS 只支持"且"
需求:统计"销售部"或"技术部"的人数。
错误思路:
=COUNTIFS(A:A, "销售部", A:A, "技术部") // 结果=0,因为不可能同时是两个部门 正确做法1:两个 COUNTIF 相加
=COUNTIF(A:A, "销售部") + COUNTIF(A:A, "技术部") 正确做法2:用 SUMPRODUCT
=SUMPRODUCT((A2:A100="销售部")+(A2:A100="技术部")) 正确做法3:用通配符(如果条件有规律)
=COUNTIF(A:A, "*部") // 以"部"结尾的都统计 坑5:空单元格的坑
统计空值:
=COUNTIFS(A:A, "") // 统计A列真正空白的 统计非空:
=COUNTIFS(A:A, "<>") // 统计A列有内容的 注意:如果单元格里敲了空格,视觉上看不见,但不算空!用查找替换清理空格。
坑6:通配符匹配了不该匹配的
现象:用 "*A*" 匹配产品名,结果"A产品"和"BA产品"都匹配到了。
原因:星号 * 匹配任意字符,包括0个字符。
解决:如果只想匹配精确以A开头的产品,用 "A*";如果想匹配A产品本身,直接写 "A产品" 不用通配符。
七、进阶实用小技巧
技巧1:配合单元格引用做动态看板
在单元格中设置下拉菜单(数据验证),COUNTIFS 引用这些单元格:
=COUNTIFS(地区列, E1, 产品列, F1, 状态列, G1) 改下拉选项,统计结果实时变化,秒变动态报表!
技巧2:统计包含某个字的记录
=COUNTIFS(A:A, "*北京*") // 地址中包含"北京"的 技巧3:排除某些值
=COUNTIFS(A:A, "<>缺考", A:A, "<>请假") // 既不是缺考也不是请假的 技巧4:多列条件统计
=COUNTIFS(A2:A100, "是", B2:B100, ">0", C2:C100, "<>") 三列同时满足:A列="是" 且 B列>0 且 C列非空。
技巧5:配合 SUMPRODUCT 实现"或"条件
=SUMPRODUCT(((地区="华北")+(地区="华东"))*(产品="A产品")) 统计华北或华东地区、且产品为A产品的订单数。
技巧6:不连续条件范围用多组公式相加
=COUNTIFS(A2:A50, ">60") + COUNTIFS(D2:D50, ">60") 统计A列和D列中大于60的总数(两列是独立的条件范围)。
八、COUNTIFS 常见场景速查表
九、常见问题 FAQ
Q:COUNTIFS 最多能加几个条件?
A:127 对(条件范围+条件算一对),日常用到3-5个已经很复杂了。
Q:条件里能写公式吗?
A:条件本身不能嵌套公式,但可以引用公式结果所在的单元格。
Q:COUNTIFS 区分大小写吗?
A:不区分!"ABC" 和 "abc" 会被视为相同。如需区分,用 SUMPRODUCT + EXACT。
Q:条件范围可以选整列吗?
A:可以,如 A:A,但数据量大时会很慢,建议指定具体范围如 A2:A1000。
Q:COUNTIFS 能统计颜色吗?
A:不能直接统计。需要先按颜色筛选,或用 VBA/Macro 自定义函数。
Q:如何实现"且"和"或"混合?
A:比如"(A或B)且C",用 SUMPRODUCT:
=SUMPRODUCT(((地区="华北")+(地区="华东"))*(状态="已完成")) 十、小练习
试着完成以下练习,巩固所学:
统计成绩表中"80分以上且100分以下"的人数 统计销售表中"华东地区、金额>5000、已回款"的订单数 统计考勤表中"不是请假、不是缺勤"的记录数(用排除法) 做一个动态统计:在三个单元格分别选择地区、产品、状态,COUNTIFS 自动更新结果
总结
COUNTIFS 是多条件计数的王牌函数,记住五个要点:
**条件范围和条件成对出现**,用逗号隔开
**所有条件是"且"的关系**,必须同时满足
**条件加引号,引用不加**(`">60"` vs `">"&A1`)
**条件范围大小必须一致**,否则报错
**需要"或"条件时**,用多个 COUNTIF 相加或 SUMPRODUCT
掌握了 COUNTIFS,Excel 数据分析又多了一把利器!
系列教程:XLOOKUP | SUMIF | SUMIFS | COUNT | **COUNTIFS** | 下期预告:SUMPRODUCT
夜雨聆风