如何统计数据个数
在处理各种业务时,经常需要统计某个数据区域内的不重复数据个数。现需要统计其中不重复数据个数,即重复出现的数据按1个计算,该如何操作呢?
→ 解决方案1:
使用1/COUNTIF与
SUM函数组合统计不重复数据个数。
→ 操作方法
在C2单元格输入以下2个公式之一:
公式1 {=SUM(1/COUNTIF(A2:A16,A2:A16))}
公式2 =SUMPRODUCT(1/COUNTIF(A2:A16,A2:A16))
→ 原理分析
1.使用COUNTIF函数进行条件统计,返回A2:A16单元格区域内每个数据出现次数的数组:
{2;2;1;3;2;1;3;2;1;1;2;1;1;2;3}
被1除后,生成数组:
{1/2;1/2;1;1/3;1/2;1;1/3;1/2;1;1;1/2;1;1;1/2;1/3}
即出现N次重复的,就变成N个1/N,求和就是1,达到重复值只算1次的目的。
2.最后使用SUM或
SUMPRODUCT函数求和即可得到区域内不重复值的个数。
→ 知识扩展
1/COUNTIF函数统计不重复值的优缺点
1.统计区域内不得有空单元格,否则返回#DIV/0!错误。可以使用嵌套IF函数的数组公式解决这个问题,公式如下:
{=SUM(IF(A2:A16<>"",1/COUNTIF(A2:A16,A2:A16)))}
2.因为EXCEL
浮点运算可能产生误差而造成答案不正确,即公式
返回值比正确值小。对于这种情况,可以用嵌套ROUND函数修正。
3.COUNTIF函数对
数据类型没有要求,文本、数值、逻辑值、错误值均可,每一种错误值算作一个不重复数据。
4.统计区域不限于单行或单列(即一维引用),可以是多行多列的矩形区域,但必须是对单元格区域的引用,而不能是非引用类型的数组。