问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

COUNTIF函数的11个典型用法

创作时间:
作者:
@小白创作中心

COUNTIF函数的11个典型用法

引用
1
来源
1.
http://www.360doc.com/content/25/0221/07/85366549_1147259966.shtml

COUNTIF函数是Excel中非常实用的数据统计工具,主要用于统计一个区域中符合指定条件的单元格个数。其基本语法为:=COUNTIF(要检查哪些区域, 要查找什么内容?)。接下来,我们将通过11个典型应用,深入学习COUNTIF函数的各种用法。

1. 使用表达式作为统计条件

统计B2:B7区域中大于5的单元格个数:

=COUNTIF(B2:B7, '>5')

2. 以单元格中的值作为统计条件

统计B2:B7区域中大于D2单元格值的单元格个数:

=COUNTIF(B2:B7, '>' & D2)

3. 统计空白单元格数

统计B2:B10区域中的空白单元格个数:

=COUNTIF(B2:B10, '=')

4. 统计非空单元格数

统计B2:B7区域中的非空单元格个数:

=COUNTIF(B2:B7, '<>')

5. 统计包含关键字的个数

统计B2:B7区域中包含D1单元格关键字的单元格个数:

=COUNTIF(B2:B7, '*' & D1 & '*')

6. 统计各部门人数

根据A~D列的数据,在G列统计各部门的人数:

=COUNTIF(B:B, F3)

公式中的B:B表示B列的整列引用。公式在B列整列中,统计与F3单元格内容相同的单元格个数。

7. 统计身份证号码是否重复

判断B列身份证号码是否重复:

=IF(COUNTIF(B$2:B$9, B2 & '*') > 1, '重复', '不重复')

COUNTIF函数在计算文本型数字时,会默认按数值型进行处理,但是Excel中的数字精度只有15位,并且身份证号码是18位,因此会把前15位相同的身份证全部识别为相同的内容。在第二参数后连接一个通配符&'*',利用数值不能使用通配符的特性,仅查找包含B2单元格内容的文本。

8. 按部门添加序号

根据C列的部门,在A列添加序号,并且要求每个部门从1开始单独编号:

=COUNTIF(C$1:C2, C2)

COUNTIF函数的第一参数为“C$1:C2”,其中的“C$1”部分锁定了行号,“C2”部分未锁定行号。当公式学习复制时,会依次变成“C$1:C3”、“C$1:C4”、“C$1:C5”……第二参数“C2”,是公式所在单元格的左侧相邻单元格。COUNTIF函数在这个动态扩展的范围内,统计有多少个与左侧相邻单元格相同的单元格。

9. 判断所在部门

从B列内容中提取出部门名称:

=INDEX(E$2:E$6, MATCH(1, COUNTIF(B2, '*' & E$2:E$6 & '*'), ))

COUNTIF第一参数为B2单元格,统计条件为''&E$2:E$6&'',统计条件中的星号表示通配符,也就是在B2单元格中,分别统计包含E$2:E$6部门名称的个数,结果为:
{1;0;0;0;0}
再使用MATCH函数,在以上内存数组中查找1的位置。最后使用INDEX函数,在E$2:E$6单元格区域中,根据MATCH函数的位置信息,返回对应位置的内容。

10. 统计有几个部门参赛

统计C列的不重复部门数:

=SUMPRODUCT(1 / COUNTIF(C2:C17, C2:C17))

COUNTIF函数的统计区域和统计条件都是C2:C17,表示在C2:C17单元格区域中,分别统计每个单元格出现的次数。结果为:
{2;2;3;3;3;……;4;4;4;4}
接下来用1除以以上内存数组,得到这些内存数组的倒数。{1/2;1/2;1/3;1/3;1/3;……;1/4;1/4;1/4;1/4}最后再对这些倒数求和,如果某个单元格出现了两次,这一步对应两个二分之一,求和结果为1。如果某个单元格出现了三次,三个三分之一的求和结果也是1……

11. 按关键字查询

提取所有不是经理亲戚的员工名单:

=FILTER(B2:C17, COUNTIF(F2:F5, B2:B17) = 0)

先使用COUNTIF(F2:F5, B2:B17),统计B2:B17单元格区域中的姓名,在F列经理亲戚列表中出现的次数,结果返回1或者0。
{0;1;0;0;0;1;0;0;1;0;0;1;0;0;0;0}
FILTER函数的筛选条件为以上内存数组结果=0,筛选出B2:C17中符合条件的内容。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号