如下样表:
图一
在不同的日期段,项目参与人不同,但参与人可以参与多个日期段,所有,参与人一列中有许多重复人员 。
要求:计算参与人数 。
韩老师有几个不同的公式,都可以得到正确结果 。
一、SUMPRODUCT COUNTIF
公式:=SUMPRODUCT(1/COUNTIF(B2:B26,B2:B26))
解析:COUNTIF(B2:B26,B2:B26):是每一个姓名出现的次数组成的数组,
如下图,是用此公式得出的每个姓名出现的次数 。
【Excel364|排除重复值计算个数,请你来补充公式】图二
1/COUNTIF(B2:B26,B2:B26)得到如下数组:
图三
SUMPRODUCT将上述数组元素求和 , 即是不重复姓名的个数 。
二、SUM COUNTIF
公式:{=SUM(1/COUNTIF(B2:B26,B2:B26))}
原理和第一个公式相同,只不过用数组运算方式,所以用
Excel109 | SUM COUNTIF统计不重复值的个数
三、COUNT FREQUENCY
=COUNT(1/FREQUENCY(MATCH(B2:B26,B2:B26,0),ROW(1:25)))图四
(MATCH(B2:B26,B2:B26,0)返回值如图四F列所示;
FREQUENCY(MATCH(B2:B26,B2:B26,0),ROW(1:25))返回图四F列出现的频率,FREQUENCY只返回相同值中第一个值出现的频率 。
四、SUM FREQUENCY
=SUM(--(FREQUENCY(MATCH(B2:B26,B2:B26,0),MATCH(B2:B26,B2:B26,0))<>0))FREQUENCY(MATCH(B2:B26,B2:B26,0),MATCH(B2:B26,B2:B26,0)的返回值如图四H列所示,再与0比较,<>0的返回TURE,否则返回FLASE,再用减负运算(--) , 将TURE或FLASE转为1或0,再求和 。
五、SUMPRODUCT FREQUENCY
=SUMPRODUCT(--(FREQUENCY(MATCH(B2:B26,B2:B26,0),MATCH(B2:B26,B2:B26,0))<>0))原来同公式四 。
六、FREQUENCY COUNT
=FREQUENCY(COUNTIF(OFFSET(B2,,,ROW(1:25)),B2:B26),1)OFFSET函数已经讲过了,大家自己下载案例练习 , 来分析一下这个公式哦 。