Excel 公式

Excel COUNTIFS 多条件计数怎么用

更新于 2026-06-04 · 阅读约 6 分钟

你想知道「销售部里有多少人状态是已通过」,或者「某月里大于某金额的记录有几条」——这类同时满足两个及以上条件的计数,用 COUNTIFS 来做。本文把 COUNTIFS 的语法、多条件写法、通配符和比较符的搭配,以及常踩的坑一次讲清,最后介绍用超级表分组计数,按多个维度一次出结果,不用写一行公式。


超级表中按多个维度分组计数的示意
按多个条件计数——超级表里分组计数,多选几个分组维度即可。

COUNTIFS 语法

COUNTIFS 的完整写法是:

=COUNTIFS(区域1, 条件1, 区域2, 条件2, ...)

每一对「区域 + 条件」就是一个过滤维度,可以叠加任意多对,只有同时满足所有条件的行才会被计入。举个例子:统计 A 列部门是「销售部」、B 列状态是「已通过」的人数:

=COUNTIFS(A2:A100, "销售部", B2:B100, "已通过")

如果只需要单条件计数,用 COUNTIF 即可(少写一个参数,写法更简洁)。

再看一个三条件的例子:统计部门是「研发部」、状态是「进行中」、评级大于 3 分的人数:

=COUNTIFS(A2:A100, "研发部", B2:B100, "进行中", C2:C100, ">3")

条件可以写文本、数字、比较表达式,也可以引用单元格——把 "销售部" 换成 E2 就行,方便做动态汇总表。

配合比较符和通配符

COUNTIFS 的条件参数支持两类特殊写法,掌握了就能处理绝大多数场景。

比较符:把运算符和数值放进引号里拼成字符串。常用的有:

  • ">=60":大于等于 60;
  • "<>已取消":不等于「已取消」;
  • "<2026-01-01":早于某日期(日期区间计数见下文易错点)。

例:统计 C 列分数大于等于 60 且 D 列分类不是「缺考」的行数:

=COUNTIFS(C2:C100, ">=60", D2:D100, "<>缺考")

通配符:* 匹配任意字符,? 匹配单个字符,只对文本条件有效。例:统计 A 列包含「工程」二字的行数:

=COUNTIFS(A2:A100, "*工程*")

注意:通配符不能和数字条件一起用;如果条件里要匹配字面的星号或问号,在前面加 ~ 转义,比如 "~*"

如果需要的是按条件求和而非计数,可以参考 SUMIF / SUMIFS 的用法;如果要统计非空单元格的数量,可以看 COUNT 统计个数

COUNTIFS 和 COUNTIF 的区别

COUNTIF 只支持一个条件区域 + 一个条件,适合「统计某列里等于某值的行数」这类单维度需求。COUNTIFS 是它的多条件升级版,支持同时加多组条件,所有条件之间是「且」的关系。

如果你目前只用到单条件,先看 COUNTIF 就好;需要同时满足两个以上条件时,直接换成 COUNTIFS,把原来的一对区域+条件直接复用,再追加新的条件对即可。

一句话总结区别
COUNTIF 是单条件版,COUNTIFS 是多条件版,后者完全向前兼容:只传一对区域+条件时,COUNTIFS 和 COUNTIF 等价。

易错点

COUNTIFS 虽然直观,但有几个地方非常容易出错:

  • 各区域大小必须一致。COUNTIFS 要求每个「条件区域」的行数(或列数)完全相同,否则直接报错。A2:A100B2:B101 就不行——区域必须对齐。
  • 文本条件必须放在引号里。COUNTIFS(A2:A100, 销售部) 会报错,正确写法是 COUNTIFS(A2:A100, "销售部")。如果条件来自单元格,直接写单元格引用,不加引号:COUNTIFS(A2:A100, E2)
  • 日期区间需要两个条件。要统计 2026 年 1 月的记录,需要两对区域+条件同时限定上下界:COUNTIFS(D2:D100, ">=2026-01-01", D2:D100, "<2026-02-01"),缺一对就会统计错误。
  • 区域里包含文本的数字不参与比较符计数。如果某列的数字以文本形式存储,">=60" 这类比较符会把它们忽略。先用「数据 → 分列」转为数值,或者用 VALUE() 转换后再统计。

更省事:超级表分组计数

Excel 里做多条件计数,每换一组条件都要改公式。如果你需要同时看「每个部门 × 每个状态」下各有多少人,要写很多个 COUNTIFS,还得手动建汇总区域,非常繁琐。

超级表(TableDI)是一款桌面端高能表格助手,macOS 和 Windows 均可用,离线运行、无需登录。它内置分组汇总功能,可以按多个维度同时分组,并对每个分组做计数(也支持求和、均值等),不用写任何公式,步骤如下:

  1. 把表格导入超级表(Excel / CSV 直接拖进来)。
  2. 点击顶部工具栏的「汇总」按钮,进入分组汇总视图。
  3. 在「分组维度」里依次选择部门列、状态列——可以同时选多个维度。
  4. 在「汇总方式」里选择计数,每个分组的行数会自动算好。
  5. 结果表格即刻生成:「销售部 / 已通过 / N 人」这样的每行都在,不遗漏任何组合。

原始数据改了,再点一下刷新,汇总结果同步更新,不用改任何公式。

适用场景对比
Excel COUNTIFS 适合「我已经知道要查哪几个特定条件组合」;超级表分组计数适合「我想看所有条件组合下的全局分布」——后者一次出全,前者逐个查。

超级表分组计数 vs Excel COUNTIFS 对照

对比项Excel COUNTIFS超级表分组计数
怎么用记语法、写公式、逐组手填点选分组维度,不写公式
同时看多维度全量要一个组合写一条公式多选维度,全部组合一次出
数据更新后区域不变时自动,区域变了要改点刷新,自动同步
区域大小要对齐必须手动保证,否则报错自动处理,无需关心
支持通配符支持(仅文本条件)通过筛选条件设置,更直观
学习成本需要记语法与易错点点选操作,几乎零学习成本

常见问题

COUNTIFS 和 COUNTIF 区别是什么?

COUNTIF 只能写一个条件区域加一个条件,适合单维度计数。COUNTIFS 支持多对「区域 + 条件」,所有条件同时满足才计入,是 COUNTIF 的多条件升级版。只用一个条件时两者等价;需要两个及以上条件时,用 COUNTIFS。详见 COUNTIF 的用法

怎么按日期区间计数?

日期区间需要两个条件分别限定起始和结束。例如统计 D 列中 2026 年 1 月份的记录数:=COUNTIFS(D2:D100, ">=2026-01-01", D2:D100, "<2026-02-01")。两个条件都指向同一个区域 D2:D100,一个限下界、一个限上界,同时满足才计入。

区域大小不一致会怎样?

COUNTIFS 要求每个条件区域的行数(或列数)完全相同,不一致时 Excel 会返回 #VALUE! 错误。检查方法:在编辑栏里选中每个区域引用,按 F2 查看蓝框是否对齐,调整到相同大小即可。

不想每次都手写 COUNTIFS?

免费下载超级表,点选分组维度一次统计所有条件组合,离线本地运行

免费下载(macOS / Windows)