如下样表:

图一

在不同的日期段,项目参与人不同,但参与人可以参与多个日期段,所有,参与人一列中有许多重复人员。

要求:计算参与人数。

韩老师有几个不同的公式,都可以得到正确结果。

一、SUMPRODUCT+COUNTIF

公式:

=SUMPRODUCT(1/COUNTIF(B2:B26,B2:B26))

解析:COUNTIF(B2:B26,B2:B26):是每一个姓名出现的次数组成的数组,

如下图,是用此公式得出的每个姓名出现的次数。

图二

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函数已经讲过了,大家自己下载案例练习,来分析一下这个公式哦。

你还有哪些公式?留言哦