第10章:COUNTIFS 函数 —— 多条件计数

多条件计数:成对参数、区间统计、AND关系

📥 本章配套练习册(数据已录入、写完公式自动判分):点击下载 第10章-COUNTIFS函数-练习.xlsx

难度:⭐⭐⭐ | 建议用时:35 分钟 | 前置知识:第08章 COUNTIF

本章学习目标

  • 会用 COUNTIFS 同时按多个条件计数(条件之间是"并且"关系)
  • 掌握"一个区域配一个条件,成对出现"的参数结构
  • 会做"区间统计"(如工资 8000~10000 之间的人数)

一、这个函数是干什么的?

COUNTIF 只能按一个条件数,现实中的问题往往是多个条件叠加:

  • 销售部的员工有几人?
  • 技术部里工资超过 12000 的有几人?
  • 工资在 8000 到 10000 之间的有几人?

COUNTIFS(末尾多个 S)就是 COUNTIF 的"多条件升级版"。

二、语法结构

1
=COUNTIFS(条件区域1, 条件1, 条件区域2, 条件2, ...)
参数 说明
条件区域1、条件1 第一对"区域+条件"
条件区域2、条件2 第二对"区域+条件"
…… 最多 127 对

两条核心规则

  1. 成对出现:一个区域后面必须紧跟它的条件,区域和条件永远一对一
  2. AND 关系:所有条件同时满足才会被数进去(想要"或者"关系需要其他方法,见进阶)

⚠️ 所有条件区域必须一样大、行对齐(都是 B2:B9、C2:C9 这样的 8 行)。

三、基础示例(手把手)

员工表(与前两章相同):

A B C D
1 姓名 部门 性别 工资
2 张三 销售部 8500
3 李四 技术部 12000
4 王五 销售部 9200
5 赵六 技术部 11500
6 孙七 人事部 7800
7 周八 销售部 11000
8 吴九 技术部 13500
9 郑十 人事部 8200

示例1:销售部的男性人数

1
=COUNTIFS(B2:B9, "销售部", C2:C9, "男")

结果:2(张三、周八)

逐步解读(COUNTIFS 逐行检查,一行全满足才数):

部门=销售部? 性别=男? 都满足?
张三 数!
李四 ✗(技术部) 不数
王五 ✗(女) 不数
周八 数!
……

示例2:技术部且工资超过 12000 的人数

1
=COUNTIFS(B2:B9, "技术部", D2:D9, ">12000")

结果:1(只有吴九 13500;李四正好 12000,不满足">")

解读:两个条件区域可以不同列(B 列部门 + D 列工资)。

示例3:区间统计——工资 8000~10000 之间的人数(重点技巧!)

“之间"要拆成两个条件:≥8000 并且 ≤10000。同一列可以出现两次:

1
=COUNTIFS(D2:D9, ">=8000", D2:D9, "<=10000")

结果:3(8500、9200、8200)

解读:D 列出现了两次,各配一个条件,合起来圈出区间。这是统计"分数段人数"“年龄段人数"的标准写法。

四、进阶用法

1. 三个及以上条件

人事部的女性且工资大于 8000:

1
=COUNTIFS(B2:B9, "人事部", C2:C9, "女", D2:D9, ">8000")

结果:1(郑十 8200;孙七 7800 不满足)

2. 日期区间统计

统计 2026 年 1 月的订单数(A 列是日期):

1
=COUNTIFS(A:A, ">=2026/1/1", A:A, "<2026/2/1")

日期比较同样放引号里,写法和数字完全一致。

3. “或者"关系怎么办?

COUNTIFS 只能"并且”。想统计"销售部或者技术部"的人数,用两个 COUNTIF 相加:

1
=COUNTIF(B2:B9,"销售部") + COUNTIF(B2:B9,"技术部")

结果:3 + 3 = 6。

五、常见错误与注意事项

问题 原因 解决
报错或结果为 0 区域和条件没配对(漏写条件) 检查参数是否"区域,条件,区域,条件"交替
#VALUE! 各条件区域大小不一致 全部改成相同行数(如都 2:9)
区间统计结果不对 区间两个条件写成一个(">=8000<=10000" 拆成两对参数
与 COUNTIF 混淆 忘记加 S 单条件 COUNTIF,多条件 COUNTIFS
边界值数错 >>= 搞混 工资>12000 不含 12000;>=12000 含

六、练习题(请先独立完成)

练习数据准备

沿用第08章的员工表(A1:D9)。

题目

题号 题目 在何处作答
1 统计技术部的女性人数 F2
2 统计人事部的女性人数 F3
3 统计销售部且工资大于 9000 的人数 F4
4 统计工资在 8000~10000 之间(含 8000 和 10000)的人数 F5
5 统计工资在 10000~13000 之间(含边界)的人数 F6
6 统计技术部、女性、且工资大于等于 11000 的人数(三条件) F7
7 挑战:统计"销售部或人事部"的总人数(提示:COUNTIFS 只能"并且”) F8

七、练习讲解(做完再看)

第1题讲解

部门列配"技术部”,性别列配"女":=COUNTIFS(B2:B9,"技术部",C2:C9,"女") → 只有赵六,结果 1。

第2题讲解

=COUNTIFS(B2:B9,"人事部",C2:C9,"女") → 孙七、郑十,结果 2。

第3题讲解

部门 + 工资两条件:=COUNTIFS(B2:B9,"销售部",D2:D9,">9000")。 销售部三人:张三 8500 ✗、王五 9200 ✓、周八 11000 ✓ → 结果 2。

第4题讲解

区间拆两条件,同列出现两次:=COUNTIFS(D2:D9,">=8000",D2:D9,"<=10000")。 逐个验证:8500 ✓、12000 ✗(超上限)、9200 ✓、11500 ✗、7800 ✗(低于下限)、11000 ✗、13500 ✗、8200 ✓ → 3 人。

第5题讲解

=COUNTIFS(D2:D9,">=10000",D2:D9,"<=13000") → 12000 ✓、11500 ✓、11000 ✓,共 3 人。注意 13500 超上限,8500/9200 等低于下限。

第6题讲解

三对参数依次排:=COUNTIFS(B2:B9,"技术部",C2:C9,"女",D2:D9,">=11000")。 技术部女性只有赵六(11500),11500 ≥ 11000 ✓ → 结果 1。

第7题讲解

COUNTIFS 表达不了"或",拆成两个 COUNTIF 相加:

1
=COUNTIF(B2:B9,"销售部")+COUNTIF(B2:B9,"人事部")

3 + 2 = 5 人。因为"销售部"和"人事部"互斥(一个人不会同时在两个部门),直接相加不会重复计数。


八、参考答案

题号 公式 结果
1 =COUNTIFS(B2:B9,"技术部",C2:C9,"女") 1
2 =COUNTIFS(B2:B9,"人事部",C2:C9,"女") 2
3 =COUNTIFS(B2:B9,"销售部",D2:D9,">9000") 2
4 =COUNTIFS(D2:D9,">=8000",D2:D9,"<=10000") 3
5 =COUNTIFS(D2:D9,">=10000",D2:D9,"<=13000") 3
6 =COUNTIFS(B2:B9,"技术部",C2:C9,"女",D2:D9,">=11000") 1
7 =COUNTIF(B2:B9,"销售部")+COUNTIF(B2:B9,"人事部") 5

本章小结

  • =COUNTIFS(区域1, 条件1, 区域2, 条件2, ...)区域与条件成对出现,全部满足才计数(AND)
  • 同一列出现两次即可圈出区间(≥下限 且 ≤上限)
  • “或者"关系用多个 COUNTIF 相加解决
  • 所有条件区域必须行数一致、互相对齐

下一章:第11章:SUMIFS 函数

世界是你们
使用 Hugo 构建
主题 StackJimmy 设计