COUNTIF函数,这三种用法你会了吗?

COUNTIF函数,这三种用法你会了吗?如下图所示,要在A列按部门输入序号,不同部门的序号从1开始。COUNTIF函数的统计区域是B$2:B2,第一个B2是行绝对引用,第二个B2,是相

大家好,欢迎来到IT知识分享网。

作者:祝洪忠 转自:Excel之家ExcelHome

小伙伴们好啊,今天老祝和大家分享COUNTIF函数几个高能的应用,一起领略COUNTIF函数的魅力。

一、不一样的序号

如下图所示,要在A列按部门输入序号,不同部门的序号从1开始。

COUNTIF函数,这三种用法你会了吗?

在A2单元格输入公式,向下复制:

=COUNTIF(B$2:B2,B2)

COUNTIF函数的统计区域是B$2:B2,第一个B2是行绝对引用,第二个B2,是相对引用。当公式向下复制时,就会变成B$2:B3、B$2:B4……一个不断扩展的区域,从这个动态区域中统计B列部门的个数。

二、计算不重复的人数

如下图所示,要计算C列不重复的人数。

公式为:

=SUMPRODUCT(1/COUNTIF(A2:A14,A2:A14))

COUNTIF函数,这三种用法你会了吗?

这是一个十分常用的统计不重复数据个数的公式,其中包含了一个简单的数学逻辑:

任意一个数据重复出现N次,N个1/N的和值为1。

公式中“COUNTIF(A2:A14,A2:A14)”部分是数组计算,作用是分别统计A2:A14单元格区域中每个元素出现的次数。

运算过程相当于:

=COUNTIF(A2:A14,A2)

=COUNTIF(A2:A14,A3)

……

=COUNTIF(A2:A14,A14)

返回内存数组结果为:

{2;2;2;2;2;2;2;2;2;2;1;1;1}

再使用1除以返回的内存数组,得到以下结果:

{0.5;0.5;0.5……;1;1;1}

用1除,即相当于计算COUNTIF函数所返回内存数组的倒数。

为便于理解,把这一步的结果中的小数部分使用分数代替,结果为:

{1/2;1/2;1/2;1/2;……;1;1;1}

如果单元格的值在区域中是唯一值,这一步的结果是1。

如果重复出现两次,这一步的结果就有两个1/2。

如果单元格的值在区域中重复出现3次,结果就有3个1/3…

即每个元素对应的倒数合计起来结果仍是1。

最后用SUMPRODUCT函数求和,得出不重复的人员总数。

三、提取不重复名单

如下图所示,要提取C列不重复的名单。

公式为:

=INDEX(C:C,1+MATCH(,COUNTIF(E$1:E1,C$2:C$15),))&””

注意是数组公式,编辑完成后,要按Ctrl+Shift+回车。

COUNTIF函数,这三种用法你会了吗?

首先利用COUNTIF函数,在公式所在位置上方的单元格区域中,分别查找C$2:C$15单元格区域每个数据的个数。返回一个由0和1构成的数组,如果C$2:C$15单元格区域的元素在公式上方出现过,结果就是1;如果没出现,结果就是0。

和第一个例子里一样,COUNTIF函数的第一参数是一个扩展的区域,公式的提取结果会被重复利用。

再利用MATCH函数,在COUNTIF函数返回的数组中查找第一个0的位置,也就是查找首次出现的数据所在的位置。

由于数据表的标题行占了1行,将这个数字加1,就是需要提取的不重复数据在数据表中列的位置。

再利用INDEX函数,以MATCH函数的计算结果作为索引值,提取C列对应位置上的数据。

这个函数从最后开始往上看,比较容易理解一些哦。

好了,今天的分享就是这些吧,坚持看完的小伙伴,你们辛苦了,哈哈~~

作者:祝洪忠

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/80312.html

(0)

相关推荐

发表回复

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

关注微信