关于COUNTIF函数在Excel中的使用技巧,都在这里了,干货满满!
1 COUNTIF函数基础语法解析
COUNTIF函数用于统计满足某个条件的单元格的数量,该函数拥有十分强大的条件统计功能,在工作中有极其广泛的应用,其基本语法为:
COUNTIF(range,criteria)
range:必需。要进行计数的单元格组。区域可以包括数字、数组、命名区域或包含数字的引用。空白和文本值将被忽略。
criteria:必需。用于决定要统计哪些单元格的数量的数字、表达式、单元格引用或文本字符串。
说明:
(1)criteria中的任何文本条件或任何含有逻辑或数学符号的条件都必须使用双引号括起来。如果条件为数字,则无需使用双引号。
(2)criteria参数中支持使用通配符(包括问号“?”和星号“*”)。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在该字符前键入波形符“~”。
(3)使用COUNTIF 函数匹配超过 255 个字符的字符串时,将返回不正确的结果。
COUNTIF函数仅支持criteria使用一个条件。 如果要使用多个条件,请使用COUNTIFS函数。
下面来看个例子,更好地理解COUNTIF函数的上述语法及参数。
案例场景如下:
要统计A列出现几次"苹果",公式为:
=COUNTIF(A2:A12,"苹果")
要统计B列出现几次55,公式为:
=COUNTIF(B2:B12,55)
可见如果条件为文本,需要使用双引号引起来;如果条件为数字,则无需使用双引号。
2 COUNTIF函数统计等于某值的单元格个数
COUNTIF函数的条件计数功能在实际工作中应用非常广泛,比如统计产品在清单中出现的次数,检查工资表中的姓名是否有重复,根据指标计算产品合格率等,先选择最基础的一个案例来介绍。
案例场景如下(黄色区域输入公式)
E2输入公式:
=COUNTIF($A$2:$A$12,D2)
COUNTIF函数的第一参数绝对引用,是为了公式向下填充时,保持引用范围不变;
COUNTIF函数的第二参数直接使用相对引用待统计单元格,公式向下填充时,D2依次变为D3、D4……
3 COUNTIF函数按部门统计序号
灵活运用COUNTIF函数的统计计数功能,有时能达到意想不到的效果。比如下面这个案例:
案例场景如下(黄色区域输入公式)
表格中的A:B列是数据源区域,我们需要统计A列的员工的部门序号,即部门中第一次出现为该部门1号,如果已有该部门员工出现过,就顺次往下排号,如黄色区域所示。
先给出公式,C2输入以下公式:
=B2&COUNTIF(B$2:B2,B2)
4 COUNTIF函数统计大(小)于某值的单元格个数
工作中进行条件计数统计的时候,免不了遇到大小比较的情形,比如统计工龄高于某年的员工人数,合格率低于某值的工件个数,成绩高于某值的学生人数等,下面结合一个案例来具体介绍。
案例场景如下(黄色区域输入公式)
要统计大于90的人数,公式如下:
=COUNTIF(B2:B12,">90")
要统计小于60的人数,公式如下:
=COUNTIF(B2:B12,"<60")
注意公式的写法,使用的是算术运算符连接数值作为COUNTIF函数的第二参数,需要用双引号引起来。
5 COUNTIF函数统计某个数值区间的单元格个数
那么如果遇到需要同时满足既要大于某值又要小于某值的情形,怎么办呢?
案例场景如下(黄色区域输入公式)
这个表格中左侧是数据源区域,要求统计大于等于80且小于90的人数。
如果我们用上一节教程中的办法肯定也是可以实现的,比如这个公式:
=COUNTIF(B2:B12,">=80")-COUNTIF(B2:B12,">=90")
聪明的小伙伴们一定已经看懂啦,要统计的大于等于80且小于90的人数,不就是用大于等于80的人数减去大于等于90的人数么,分分钟搞定。
不过这么看起来公式好长,能简化一点吗?
当然可以啦!简化公式如下:
=SUM(COUNTIF(B$2:B$12,{">=80",">=90"})*{1,-1})
6 COUNTIF函数单字段模糊条件统计
我们在工作中遇到的统计需求,有时候可以明确完整的统计条件,有时候是要根据一部分确定的条件来进行统计,比如我们要统计开头是某值的数据个数,或者统计结尾是某值的数据个数,或者统计数据中间包含某值的数据个数时,具体举例如统计姓“李”的姓名个数时。
在条件计数遇到模糊条件时,需要配合通配符来完成,来看下面案例。
案例场景如下(黄色区域输入公式)
先给出公式。要统计姓“李"且姓名为三个字的人数,输入以下公式:
=COUNTIF(A$2:A$12,"李??")
要统计姓“王"的人数,输入以下公式:
=COUNTIF(A$2:A$12,"王*")
7 COUNTIF函数单字段并列条件统计个数
通过前面的教程,我们掌握了COUNTIF函数条件统计的方法,比如统计符合某条件的数据个数,那么当遇到需要统计符合条件1或条件2的个数时,如何求解呢?
案例场景如下(黄色区域输入公式)
表格中左侧是数据源区域,包含员工姓名和对应的分公司信息,现在要统计分公司是北京或上海的人数之和。
E2输入以下公式:
=SUM(COUNTIF(A$2:A$12,{"北京","上海"}))
8 COUNTIF函数统计文本数据个数
结合下面案例介绍COUNTIF函数统计文本数据个数的方法
案例场景如下(黄色区域输入公式)
给出公式,D2输入以下公式:
=COUNTIF(A2:A8,"*")
9 COUNTIF函数统计非空数据个数
结合下面案例介绍COUNTIF函数统计非空数据个数的方法
案例场景如下(黄色区域输入公式)
给出公式,D2输入以下公式:
=COUNTIF(A2:A8,"<>")
10 COUNTIF函数统计真空数据个数
结合下面案例介绍COUNTIF函数统计真空数据个数的方法
案例场景如下(黄色区域输入公式)
先给出公式,D2输入以下公式:
=COUNTIF(A2:A8,"=")
11 COUNTIF函数统计不重复值个数
不重复值的统计是工作中很常见的需求,灵活运用COUNTIF函数可以很轻松的搞定。
案例场景如下(黄色区域输入公式)
表格中左侧是数据源区域,需要统计不重复的员工籍贯个数。
先给出数组公式,在D2输入以下数组公式,按结束输入。
=SUM(1/COUNTIF(B2:B12,B2:B12))
12 COUNTIF函数检查重复身份证号码
很多小伙伴可能都遇到过这样的困扰,当工作中遇到长文本数据的个数统计时,使用COUNTIF函数的常规用法总是出错,比如涉及身份证号码,银行账号等超过15位长度的文本时。
这时我们需要采用什么方法呢?看下面案例。
表格展示的是某企业员工信息表,需要核对B列的身份证号码中是否存在重复。
案例场景如下(黄色区域输入公式)
C2单元格输入以下公式,将公式向下复制到C11单元格。
=IF(COUNTIF(B$2:B$11,B2&"*")>1,"是","")
13 COUNTIF函数统计中国式排名
中国式排名,即无论有几个并列名次,后续的排名紧跟前面的名次顺延生成,并列排名不占用名次。
举个例子:比如对97、97、96统计的中国式排名结果为第一名、第一名、第二名。
下面案例中的表格展示的是某班级的成绩表,需要统计每名学生的成绩的中国式排名。
案例场景如下(黄色区域输入公式)
在C2单元格输入以下数组公式,按组合键,并将公式向下复制填充到C11单元格。
=SUM(IF(B$2:B$11>=B2,1/COUNTIF(B$2:B$11,B$2:B$11)))
14 COUNTIF函数提取不重复数据列表
工作中很多地方要用到提取不重复值列表,即重复的数据只出现一次,比如在月末汇总统计加班明细记录时,提取加班人员的不重复列表;搞促销活动期间统计不重复的值班人员列表等。
单纯靠COUNTIF函数本身是无法完成此类需求的,但我们只要学会COUNTIF函数结合INDEX函数及MATCH函数的方法,就可以轻松提取出一列数据中的不重复内容
下面结合一个案例来具体介绍。
下图表格中展示了某企业在大促期间安排的值班人员记录表的部分内容,需要根据B列的值班人员,提取出不重复的值班人员清单。
案例场景如下(黄色区域输入公式)
在D2单元格输入以下数组公式,按组合键,向下复制公式至出现空白单元格。
=IFERROR(INDEX(B:B,MATCH(0,COUNTIF(D$1:D1,$B$2:$B$11),0)+1)&"","")
如果你觉得有用,就分享给朋友们看看吧~
本文由 Excel函数与公式 友情推荐
长按关注
易学宝微视频教程,1290个Office技巧精粹,每个技巧都与实际工作密切相关。轻松学习技巧,练就职场达人,淘宝搜索关键字:ExcelHome易学宝