Excel公式:如何统计包含特定文本的单元格数量

220 多个excel快捷键速查表,适用Windows和Mac。工作效率提高10倍。免费下载>>>

下载 “excel快捷键速查表” Excel快捷键速查表.zip – 已下载54次 – 3 MB

通用公式

=COUNTIF(range,”*txt*”)

概括

要对包含特定文本的单元格进行计数,可以将COUNTIF 函数与 通配符一起使用。在所示示例中,E5 中的公式为:

=COUNTIF(B5:B15,”*a*”)

解释

COUNTIF 函数对区域中满足条件的单元格进行计数。例如,要计算包含“a”的范围内的单元格数,您可以使用:

=COUNTIF(range,”a”) // exact match

但是,请注意这是完全匹配的。为了被计算,一个单元格必须恰好包含“a”。如果单元格包含任何其他字符,则不会计算在内。

对于所示的问题,我们想要计算包含特定文本的单元格,这意味着文本可以位于单元格中的任何位置。为此,我们需要使用星号 (*) 字符作为通配符。例如,要计算我们使用的任何地方包含字母“a”的单元格:

=COUNTIF(range,”*a*”)

公式中的星号表示“匹配任意数量的字符,包括零”,因此此模式将计算任何位置包含“a”的任何单元格,无论左侧或右侧有或没有其他字符。示例中使用的公式都遵循相同的模式:

=COUNTIF(B5:B15,”*a*”) // contains “a”
=COUNTIF(B5:B15,”*2*”) // contains “2”
=COUNTIF(B5:B15,”*-S*”) // contains “-s”
=COUNTIF(B5:B15,”*x*”) // contains “x”

注意: COUNTIF 不区分大小写。

使用单元格引用

您可以轻松调整此公式以使用另一个单元格的内容作为条件。例如,如果 A1 包含您要匹配的文本,您可以使用:

=COUNTIF(range,”*”&A1&”*”)

计算具体数字

如果您要查找特定数字并且单元格包含数字数据,则上面的 COUNTIF 公式将不起作用。这是因为通配符会自动导致 COUNTIF 仅查找文本(即查找“2”而不仅仅是 2)。因为永远不会在真数中找到文本值,所以 COUNTIF 将返回零。

要计算数字内容中的特定数字,您可以使用基于SEARCH 函数和ISNUMBER 函数的不同公式,如下所示:

=SUMPRODUCT(–(ISNUMBER(SEARCH(text,range))))

在此公式中,文本是您要查找的文本,范围是您要计算的单元格范围。当 SEARCH 找到匹配项时,它会返回一个数字,ISNUMBER 函数会将这个数字转换为 TRUE 或 FALSE 值。因为我们要检查多个单元格,所以结果将是一个数组或 TRUE 和 FALSE 值。双负数用于将 TRUE 和 FALSE 值转换为 1 和 0,SUMPRODUCT 函数将返回数组的总和作为最终结果。

SEARCH 会自动将所有数字视为文本,因此它会查找例如数字 201 中的 1。此外,无需使用通配符来指示位置,因为 SEARCH 会自动查看单元格中的所有文本。

区分大小写的版本

对于区分大小写的计数,您可以使用基于FIND 函数的公式:

=SUMPRODUCT(–(ISNUMBER(FIND(text,range))))

这里使用 FIND 函数而不是 SEARCH,因为 FIND 区分大小写。在其他方面,该公式的工作方式类似于上述 ISNUMBER + FIND 公式。

220 多个excel快捷键速查表,适用Windows和Mac。工作效率提高10倍。免费下载>>>

下载 “excel快捷键速查表” Excel快捷键速查表.zip – 已下载54次 – 3 MB

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注