在 Excel 中使用 COUNTIF() 的各种方法
既然您已经了解了 Excel 中 COUNTIF() 的工作方式,让我们看看更多使用场景。
统计包含文本的单元格
COUNTIF() 可以统计某段数据中某个特定文本出现的次数。比如,我在 A2:A10 有一个水果列表,想知道“Apple”出现了多少次。为此,我输入:
=COUNTIF(A2:A10, "Apple")
该公式会统计该范围内与“Apple”完全匹配的单元格。

使用 COUNTIF() 统计包含文本的单元格。图片由作者提供。
统计数值
我们也可以统计大于、小于或等于某个特定值的数字。例如,我有一个数据集,现在可以用 COUNTIF() 公式找出不同情况。
-
统计数量大于
500的水果个数:=COUNTIF(B2:B10,">500") -
统计数量不等于
500的水果个数:=COUNTIF(B2:B10, "<>500") -
统计数量恰好为
500的水果个数:=COUNTIF(B2:B10, “500”) -
统计数量小于
500的水果个数:=COUNTIF(B2:B10,"<500")

使用 COUNTIF() 统计数值。图片由作者提供。
使用通配符进行部分匹配
有时我们希望统计包含某个词或短语一部分的单元格。在这种情况下,我们使用通配符。通配符有两种:
*匹配任意数量的字符。
?仅匹配单个字符。
例如,我有一个水果数据集,这里用两个不同公式展示 COUNTIF() 如何处理通配符情况。要统计水果列表中任意位置包含字母 n 的所有水果,我输入:
=COUNTIF(A2:A10, "*n*")
该公式使用星号通配符 *,表示任意数量字符(包括零个)。通过输入 "*n*",Excel 会查找文本中任意位置(开头、中间或结尾)出现 "n" 的单元格。公式将统计范围 A2:A10 内所有匹配的单元格,并返回包含字母 "n" 的水果总数。
要统计所有以 K 开头且为四个字母的水果,我输入:
=COUNTIF(A2:A10,"K???")
该公式使用通配符 ?,它恰好代表一个字符。通过输入 "K???",Excel 会统计范围 A2:A10 中所有以字母 K 开头且总长度正好为四个字母的单元格,并显示最终结果。

在 COUNTIF() 中使用通配符。图片由作者提供。
从其他单元格引用条件
我们可以不把条件写死在公式中,而是使用单元格引用。这样公式更灵活,因为当单元格的值变化时会自动更新。
如果我想知道数量大于 300 的水果有多少,我在 D2 单元格中输入条件,然后在公式中引用该单元格,如下:
=COUNTIF(B2:B11, D2)
或者,我们也可以在公式中用引号写入逻辑运算符,并用 & 连接以引用 D3 单元格,如下:
=COUNTIF(B2:B11, ">"&D3)

在 COUNTIF() 中使用单元格引用进行计数。图片由作者提供。
统计空白与非空白单元格
缺失数据与已有数据同样重要。COUNTIF() 可帮助我们发现这些空缺。假设我在管理库存,想知道缺货的水果数量(空白单元格)。为此,我创建以下公式:
=COUNTIF(B2:B11,"")
而要统计可用(非空)水果的数量,我使用以下公式:
=COUNTIF(B2:B11, "<>")
不过,如果您的单元格包含不可见文本,如空格或某些特殊字符,COUNTIF() 会将其计为非空白单元格。

使用 COUNTIF() 统计空白与非空白单元格。图片由作者提供。
基于不同条件统计日期
我们也可以基于不同条件统计日期。假设我们要统计有多少员工在单元格 B11(2024 年 3 月 1 日)这一天入职。那么公式为:
=COUNTIF(B2:B9, B11)
若要检查在 B11 单元格日期“当日或之前”入职的人数,我使用以下公式:
=COUNTIF(B2:B9, ">="&B11)

使用 COUNTIF() 统计日期差异。图片由作者提供。
COUNTIF() 的多条件用法
我们也可以用 COUNTIF() 组合多个条件。如果我想统计日期落在 2024 年 1 月 1 日到 2024 年 1 月 30 日之间的数量,我输入:
=COUNTIF(B2:B9, ">="&B12) - COUNTIF(B2:B9, ">"&B13)
或者,您可以使用 COUNTIFS() 来处理多个条件,如下:
=COUNTIFS(B2:B9,">="&B12,B2:B9,"<="&B13)
两者都会得到相同的结果。

为两个条件使用 COUNTIF()。图片由作者提供。
Excel COUNTIF() 与 COUNTIFS()
正如以上示例所示,Excel 的 COUNTIF() 函数基于单一条件计数;我们也可以像上一个示例那样,通过使用多个 COUNTIF() 来实现多条件筛选。
此时要说明的是,如果您的数据确实需要多个条件,Excel 还提供了一个扩展且较新的函数 COUNTIFS()。当只指定一个条件时,COUNTIFS() 的行为与 COUNTIF() 完全一致,但它允许您应用多个条件。
尽管 COUNTIFS() 在处理 AND 条件方面更新且更强大,COUNTIF() 仍然在 Excel 中有其用武之地。对于简单条件,它往往能创建更易读的公式,使您的表格更易理解与维护。更重要的是,与 COUNTIFS() 不同,COUNTIF() 能够处理 OR 条件,也就是当您希望统计满足多个条件中任意一个的单元格时。
我们用一个简单示例来理解:
=COUNTIF(B2:B11, "100") + COUNTIF(B2:B11, "900")
该公式会统计值为 100 或 900 的单元格。由于单元格中没有 900,且只有一个 100,因此结果为 1。

使用 COUNTIF() 应用 OR 逻辑。图片由作者提供。
假设我还需要知道某一行同时包含值 300 和 kiwi 的次数。为此,我可以使用 COUNTIFS():
=COUNTIFS(B1:B11, "300", A1:A11, "kiwi")
该公式会统计同时满足两项条件的行数。然而结果为 0,因为这两个条件均未被满足。

使用 COUNTIFS() 应用 AND 逻辑。图片由作者提供。
了解这一区别很有帮助,因此我们也将其收录在我们的Excel 公式速查表中。如果您想紧跟最新进展,建议学习我们的Excel Fundamentals 技能路径。
常见错误与排查
即使是经验丰富的 Excel 用户,有时也会遇到 COUNTIF() 的问题。该函数很有用,但也有一些容易踩坑的地方。以下是人们最常遇到的问题以及快速解决方法。
长文本字符串计数不正确
COUNTIF() 不支持超过 255 个字符的文本字符串。如果您处理更长的文本并得到意外结果,尝试使用 CONCATENATE() 或 & 运算符合并拆分条件,使其可被处理:
=COUNTIF(range, CONCATENATE("First part of text", "Second part of text"))
或者
=COUNTIF(range, "First part of text" & "Second part of text")
COUNTIF() 中的 VALUE! 错误
#VALUE! 错误通常出现在公式引用了已关闭的工作簿时。因为 Excel 不允许 COUNTIF() 在外部文件关闭的情况下对其数据进行计数。解决方法是,在运行公式前确保被引用的工作簿已打开。文件打开后错误应当消失,COUNTIF() 将正常工作。
运算符使用不当
有时我们会忘记把逻辑运算符放在引号内。请务必确保 >、< 和 <> 等运算符在条件中位于引号内。否则您将得不到正确输出。
例如,下面这个公式会报错:
=COUNTIF(B2:B10,>500)
为避免此问题,请确保将逻辑运算符置于引号内。
=COUNTIF(B2:B10,">500")
Excel COUNTIF() 最佳实践
在 Excel 中使用 COUNTIF() 时,请遵循以下关键做法。
-
使用命名范围:与其在公式中选择
A2:A10这样的范围,不如为该范围自定义名称,使公式更易理解。例如,要统计 Banana 在列表中出现的次数,我们可以用=COUNTIF(A2:A10, "Banana")。但如果我把该范围命名为 Items,并将条件使用单元格引用,就可以将公式更新为:=COUNTIF(Items, C2)。这样公式更清晰易懂。 -
多条件时使用 COUNTIFS():有时我们需要基于多个条件计数。在这种情况下,与其使用多个
COUNTIF()公式,不如使用COUNTIFS(),它是应用多重筛选的最佳选择。
COUNTIF() 与相关函数
除了 COUNTIF() 和 COUNTIFS(),Excel 还有许多用于计数单元格的函数。不过,每个函数都有其特定用途。让我们进一步了解:
| Function | 功能说明 | 示例 |
|---|---|---|
COUNTIF() | 统计符合单一条件的单元格数量。 | 统计“Apple”在列表中出现的次数。 |
COUNTIFS() | 统计同时满足多个条件的单元格。 | 统计“Apple”出现且价格高于 $2 的次数。 |
COUNT() | 仅统计数值。 | 统计某列中的数字数量,忽略文本。 |
COUNTA() | 统计所有非空单元格。 | 统计所有填充的单元格,包括数字、文本和符号。 |
COUNTBLANK() | 统计空白单元格。 | 统计某列或某个范围中的空白单元格数量。 |
总结
与许多其他 Excel 函数一样,COUNTIF() 也是统计与筛选数据的高效方法。与其手动逐条检查列表,您可以使用该函数快速找到所需内容。更棒的是,它同时适用于文本、数字、空白单元格和模式匹配,从而让数据分析更轻松。
如果您想进一步学习,可以从我们的Introduction to Excel 课程掌握基础开始。要打下扎实基础,Excel Fundamentals 技能路径将带您按部就班掌握核心概念。最后,如果您处理财务数据,我们的 Financial Modeling in Excel 课程将指导您构建专业的财务模型和预测。
我是内容策略专家,热衷于将复杂主题化繁为简。我曾帮助 Splunk、Hackernoon 和 Tiiny Host 等公司为其受众打造兼具吸引力与信息量的内容。
Countif() 常见问答
如何统计一列中的重复项?
您可以使用 COUNTIF() 函数在特定范围内统计某个值的重复次数。
例如 =COUNTIF(A2:A10, A2) 会显示指定范围内重复值的计数。如果您也想了解如何查找唯一值,请查看我们的文章 How to Count Unique Values in Excel。
我可以用 COUNTIF() 基于今天的日期统计吗?
可以,但请确保将 COUNTIF() 与 TODAY() 函数结合使用。
例如,要统计任务:
-
一周后到期:
=COUNTIF(A2:A10,"="&TODAY()+7) -
已逾期:
=COUNTIF(A2:A10, "<"&TODAY())

在本文中,我将带您使用 Excel 的
COUNTIF()函数来统计某个项目在列表中出现的次数。当您需要找出大于某个值的数字或基于条件筛选数据时,它非常实用。正如下文所示,我们可以将其用于文本、数字、日期,甚至在不确定精确匹配时使用通配符。快速答案
在 Excel 中使用
COUNTIF()函数:在单元格中输入
=COUNTIF(选择您要统计值的范围。
输入
,然后,设置条件。
关闭括号
)按下 Enter。
例如,要统计范围
A2:A10中大于0的值出现的次数,我们将写为使用 COUNTIF() 统计大于 0 的数字。图片由作者提供。
理解 COUNTIF() 函数
下面详细解释一下语法:Excel 中的
COUNTIF()是一个统计函数,用于统计指定范围内满足给定条件的单元格数量。它广泛用于数据分析、筛选和报告。Excel COUNTIF() 语法
其中:
range是要检查条件的单元格范围。criteria是决定哪些单元格被计数的条件。它可以是数字、文本、逻辑运算符,甚至是通配符模式。Excel COUNTIF() 基本示例
让我们用一个基本示例练习这两个参数。
如果我想统计
B2:B10中小于100的数字个数,我输入:由于我使用了
<,因此加上了引号。否则,Excel 无法识别我的条件。使用 COUNTIF() 统计小于 100 的数字。图片由作者提供。