购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.2 计数类函数

计数函数,就是用于计算个数的函数。但计数也很有讲究,它的计数方式有很多,比如计算数字个数、空值个数、条件计数等。

4.2.1 计算数字个数函数:COUNT

前面我们已经学习了COUNT函数。不过,本节还要继续深入介绍COUNT函数的应用,足以说明此函数的重要性。

COUNT函数,计算单元格区域或者数组中包含数字的个数。例如公式=COUNT(A1:A20),如果此区域中有 6 个单元格的值是数字,则计算结果就为 6。

实例44 统计出上、下半年均有销售的蔬菜品种数

问题描述: 图4-22所示的“2016年上、下半年蔬菜销售表”中列出各种蔬菜在上、下半年的销售数量,现在需要统计出上、下半年均有销售数据的蔬菜品种数。

图4-22

解决方法: 只要判断出上、下半年都有销售数据即可。无论是上半年,还是下半年,只要出现“无”关键字的均不算,最简洁的方法是使用COUNT函数来完成。

操作步骤: 如图4-23所示,首先将鼠标光标定位在B7单元格,输入数组公式=COUNT (B3:F3+B4:F4),再按Ctrl+Shift+Enter组合键,完成计算。

图4-23

步骤1: B3:F3+B4:F4将上半年、下半年的数据做加的算术运算,运算结果为{#VALUE!,71,78,#VALUE!,80},数组中出现错误值,证明上半年或下半年有字符“无”。由于汉字做算术运算会产生错误,所以出现了错误值。

步骤2: 对步骤1的结果进行计数,相当于公式COUNT({#VALUE!,71,78,#VALUE!,80}),这一步是计算数字的个数,有多少个数字就证明有多少种蔬菜是同时在上、下半年均有销售的。充分利用了COUNT函数忽略错误值的特性来完美解决此题,最后计算结果为3。

4.2.2 非空计数函数:COUNTA

COUNTA函数计算包含除空单元格之外的任何类型的信息(包括错误值和空文本 (〝〝))的单元格。

函数语法说明:

COUNTA(value1,[value2],...)

● value1:必需参数。表示要计数的值的第1个参数。

● value2,...:可选参数。表示要计数的值的其他参数,最多可包含 255 个参数。

实例45 统计每个人的达标率

问题描述: 图4-24所示的“2017年上半年各员工销售情况表(万元)”中列出了1月到6月每个员工的销售业绩。业绩为大于或等于80万元以上算达标,单元格中的“无”算作不达标,现在求每个员工的业绩达标率是多少?

图4-24

解决方法: 先求出每个员工有业绩的总月数,再求出每个员工达标的个数,员工个人达标数/员工个人总月数=达标率。

操作步骤: 如图4-25所示,首先将鼠标光标定位在H3单元格,然后输入数组公式=COUNT (0/(-B3:G3>=80))/COUNTA(B3:G3),再按Ctrl+Shift+Enter组合键,完成计算。下面以H3单元格的公式进行解析。

图4-25

步骤1: COUNT(0/(-B3:G3>=80))是计算大于或等于80的单元格的个数,主要目的是将条件成立的业绩变成数字,不成立的变成错误值,计算结果为2。

步骤2: COUNTA(B3:G3)是计算有业绩的月份数,计算结果为4。

步骤3: 将步骤1 的结果除以步骤2的结果,公式为2/4,计算结果为50%。

4.2.3 单条件计数函数:COUNTIF

COUNTIF是一个统计函数,用于统计满足某个条件的单元格的数量。COUNTIF函数的最简形式为=COUNTIF(要检查哪些区域?要查找哪些内容?)。

函数语法说明:

COUNTIF(range,criteria)

● range:必需参数。要对其进行计数的一个或多个单元格,不能是数组。空值和文本值将被忽略。

● criteria:必需参数。条件表达,可以是数字、字符、数组等形式。

实例46 统计成绩为85~95分的学生人数

问题描述: 图4-26所示的表中列出了每个学生的分数。现在需要求出“分数”列中大于或等于85,且小于或等于95的人数是多少?

解决方法: 先计算出大于或等于85分的人数,再计算出 95分以上的人数。然后将大于或等于85分的人数减去95分以上的人数,得到的就是分数在85~95之间的人数。

图4-26

操作步骤: 如图 4-27 所示,首先将鼠标光标定位在 E2 单元格,然后输入公式=COUNTIF (C2:C8,〝>=85〝)-COUNTIF(C2:C8,〝>95〝),再按Enter键,完成计算。

图4-27

步骤1: 计算所有大于或等于85分的人数,公式为COUNTIF(C2:C8,〝>=85〝),计算结果为7,这个结果也包括了大于95分的人数。

步骤2: 计算大于95分的人数,公式为COUNTIF(C2:C8,〝>95〝),计算结果为3。

步骤3: 将步骤1的人数减去步骤2的人数,7-3,结果为4。这个值便是分数在85~95之间的人数。

实例47 统计出每个人抽奖抽到的奖品种类是多少

问题描述: 图4-28所示的“2017年1月1日—10日抽奖公示”表中列出了每个人从1月1日到10日抽到的奖品。要求在L列中统计出每个人抽到的奖品种类数是多少?

图4-28

解决方法: 本实例的本质是求奖品的不重复个数。我们把每种奖品看作1,每个奖品出现多少次,就分成多少份。1次每份是1/1,2次每份是1/2,3次每份是1/3……再将它们的每一份加起来变成1,假如“电脑”出现两次,就是两个1/2相加,公式为1/2+1/2,计算结果为1。最后相加出来的结果便是不重复的个数。

操作步骤: 如图4-29所示,首先将鼠标光标定位在L3单元格,输入数组公式=SUM(1/COUNTIF(B3:K3,B3:K3)),然后按Ctrl+Shift+Enter组合键,再向下填充公式,完成计算。

图4-29

步骤1: COUNTIF(B3:K3,B3:K3)计算每个奖品出现的次数,出现多少次就计算多少次。计算结果为{1,5,2,5,1,5,5,5,1,2},比如第1条记录中“杯子”出现了5次,同时也计算了5次,“电脑”出现另外,也可以用数组的思维来完成此案例,即在F2单元格中输入公式=SUM(COUNTIF(C2:C8,{〝>=85〝,〝>95〝})*{1,-1})。

了2次,就计算了2次,其他奖品以此类推。

步骤2: 将步骤1的结果等分。所以将1作为被除数、步骤1的结果为除数进行运算,公式为1/{1,5,2,5,1,5,5,5,1,2},计算结果是{1,0.2,0.5,0.2,1,0.2,0.2,0.2,1,0.5}。比如“杯子”被等分成了每份1/5=0.2,“电脑”被等分成了每份1/2=0.5。

步骤3: 将步骤2的结果进行求和计算,公式为SUM({1,0.2,0.5,0.2,1,0.2,0.2,0.2,1,0.5}),结果为5,此值便是不重复的奖品种类数。

4.2.4 多条件计数函数:COUNTIFS

COUNTIFS就是COUNTIF的复数形式。COUNTIFS 函数先将条件应用于跨多个区域的单元格,然后统计满足所有条件的次数。最多允许 127 个区域/条件对。

函数语法说明:

COUNTIFS(criteria_range1,criteria1,[criteria_range2,criteria2]…[criteria_range1,criteria127])

● criteria_range1:必需参数。条件判断区域。

● criteria1:必需参数。条件的形式为数字、表达式、单元格引用或文本,可以支持数组、通配符等形式的条件。

● criteria_range2,criteria2,...:可选参数。添加更多的区域/条件对,最多允许 127 个区域/条件对。

实例48 统计各店男、女服装的销售数量分别是多少

问题描述: 图4-30所示的“中山市某公司服装销售表”中列出了各店的销售记录,表中每条记录代表销售1件,现在要统计出各店男、女服装的销售数量分别是多少?

图4-30

解决方案: 因为有两个条件,所以用COUNTIFS函数来完成最简单,也可以用数据透视表来完成,但本书主要介绍用函数来解决问题的方法,所以此处选择用COUNTIFS函数。

操作步骤: 如图4-31所示,首先将鼠标光标定位在H3单元格,输入公式=COUNTIFS ($E$3:$E$11,$G3,$C$3:$C$11,H$2),然后向下、向右填充公式,完成计算。

图4-31

普通方法:先看第1对区域/条件对,判断在$E$3:$E$11区域中等于$G3的;再看第2对区域/条件对,判断在$C$3:$C$11区域中等于H$2的。两对条件同时成立的只有1条记录,所以计算结果为1。如果有更多条件,则按照此种方式继续判断。但要注意引用问题,分清什么时候该绝对引用,什么时候该混合引用。

区域法:本实例的条件也可以是引用所有条件区域,先选择H3:I6单元格区域,输入公式=COUNTIFS(E3:E11,K3:K6,C3:C11,L2:M2),再按Ctrl+Shift+Enter组合键,这样就不用注意单元格引用问题了。

数组法:本实例的条件也可以写成数组公式,先选择 H3:I6 单元格区域,输入公式=COUNTIFS(E3:E11,{〝古镇店〝;〝横栏店〝;〝东升店〝;〝港口店〝},C3:C11,{〝男式〝,〝女式〝}),再按Ctrl+Shift+Enter组合键。

三种方式哪一种更合适,则要根据应用场景而定。 GIG2iBuL/GUBEHaSJHKJpcPWNPbWMsc5H1wF4ksv5jEAt1CUFzIPsttp/uArfyVR

点击中间区域
呼出菜单
上一章
目录
下一章
×