本文介绍 Microsoft Excel 中 COUNTIF 函数的公式语法和用法。

要在 Excel 中使用这些示例,请复制下表中的数据,然后将其粘贴进新工作表的 A1 单元格中。

数据

数据

苹果

32

橙子

54

桃子

75

苹果

86

公式

说明

=COUNTIF(A2:A5,"苹果")

统计单元格 A2 到 A5 中包含“苹果”的单元格的数量。结果为“2”。

=COUNTIF(A2:A5,A4)

统计单元格 A2 到 A5 中包含“桃子”(A4 中的值)的单元格的数量。结果为 1。

=COUNTIF(A2:A5,A2)+COUNTIF(A2:A5,A3)

计算单元格 A2 到 A5 中苹果(A2 中的值)和橙子(A3 中的值)的数量。结果为 3。此公式两次使用 COUNTIF 表达式来指定多个条件,每个表达式一个条件。也可以使用 COUNTIFS 函数。

=COUNTIF(B2:B5,">55")

统计单元格 B2 到 B5 中值大于 55 的单元格的数量。结果为“2”。

=COUNTIF(B2:B5,"<>"&B4)

统计单元格 B2 到 B5 中值不等于 75 的单元格的数量。与号 (&) 合并比较运算符不等于 (<>) 和 B4 中的值,因此为 =COUNTIF(B2:B5,"<>75")。结果为“3”。

=COUNTIF(B2:B5,">=32")-COUNTIF(B2:B5,">85")

统计单元格 B2 到 B5 中值大于 (>) 或等于 (=) 32 且小于 (<) 或等于 (=) 85 的单元格的数量。结果为“3”。

=COUNTIF(A2:A5,"*")

统计单元格 A2 到 A5 中包含任何文本的单元格的数量。通配符星号 (*) 用于匹配任意字符。结果为“4”。

=COUNTIF(A2:A5,"?????es")

统计单元格 A2 到 A5 中正好为 7 个字符且以字母“es”结尾的单元格的数量。通配符问号 (?) 用于匹配单个字符。结果为“2”。

常见问题

问题

出错原因

为长字符串返回了错误值。

使用 COUNTIF 函数匹配超过 255 个字符的字符串时,将返回不正确的结果。

要匹配超过 255 个字符的字符串,请使用 CONCATENATE 函数或连接运算符 &。 例如,=COUNTIF(A2:A5,"long string"&"another long string")。

预期将返回一个值,然而未回任何值。

请务必将 criteria 参数用括号括起来。

引用其他工作表时,COUNTIF 公式出现 #VALUE! 错误。

当包含该函数的公式引用已关闭工作簿中的单元格或区域并计算这些单元格的值时,会出现此错误。 要使此功能发挥作用,必须打开该其他工作簿。

最佳做法

要执行的操作

原因

请注意,COUNTIF 将忽略文本字符串中的大小写。

Criteria 不区分大小写。换句话说,字符串“apples”和字符串“APPLES”将匹配相同的单元格。

使用通配符。

可以在 criteria 中使用通配符,即问号 (?) 和星号 (*)。问号匹配任何单个字符。星号匹配任何字符序列。如果要查找实际的问号或星号,则在字符前键入代字号 (~)。

例如,=COUNTIF(A2:A5,"苹果?") 将统计最后一个字不确定的所有“苹果”的实例数量。

请确保您的数据中不包含错误的字符。

统计文本值数量时,请确保数据没有前导空格、尾部空格、直引号与弯引号不一致或非打印字符。否则,COUNTIF 可能返回非预期的值。

尝试使用 CLEAN 函数或 TRIM 函数。

为方便起见,请使用命名区域

COUNTIF 在公式(如 =COUNTIF(fruit,">=32")-COUNTIF(fruit,">85")中支持命名区域。命名区域可位于当前工作表中,也可位于同一工作簿中的另一张工作表中,甚至来自另一个工作簿。若要从另一个工作簿引用,还必须打开该第二个工作簿。

注意: COUNTIF 函数将不基于单元格背景或字体颜色计算单元格数量。但是,Excel 支持用户定义的函数 (UDF),基于背景或字体颜色对单元格执行 Microsoft Visual Basic for Applications (VBA) 操作。以下示例介绍了可如何使用 VBA 计算带特定单元格颜色的单元格数量