学习Excel技术,关注微信公众号:
excelperfect
导语:这是一个经典的命题,在完美Excel以前的许多文章中都有提及。
有时候,一系列值中有很多重复的值,但我们想要知道其中有多少个不重复的值。例如下图1所示的工作表,在单元格区域B3:B13中有一些重复的值,但这都是由5个值重复输入组成的数据。

图1
使用公式:
=SUMPRODUCT(1/COUNTIFS(B3:B13,B3:B13))
得到结果:
5
即该区域中有5个不重复的值。
公式中:
COUNTIFS(B3:B13,B3:B13)
计算单元格区域B3:B13中每个单元格的值在该区域出现的次数,得到数组:
{3;3;2;3;2;1;3;2;2;3;3}
将该数组求倒数,得到每个单元格值在该区域中出现的次数所占的比例:
{0.333333333333333;0.333333333333333;0.5;0.333333333333333;0.5;1;0.333333333333333;0.5;0.5;0.333333333333333;0.333333333333333}
相加的结果即为不重复值的个数,结果如下图2所示。

图2
注意,这里使用SUMPRODUCT函数避免了需要数组公式输入。
也可以使用名称来简化输入,如下图3所示。

图3
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。