摘要:说起Excel,那可是职场人的老朋友了,天天打交道,但是有些问题,真是让人头大,就比如说这个不重复计数,听起来好像很简单,但是用起来吧,真的一不小心就掉坑里了。
Excel不重复计数难题?告别复杂公式,这个方法让你秒变效率达人!
告别SUM+COUNTIFS,轻松掌握数据去重技巧,高效办公不是梦!
数据分析效率倍增:解锁Excel隐藏技能,告别重复计数烦恼!
说起Excel,那可是职场人的老朋友了,天天打交道,但是有些问题,真是让人头大,就比如说这个不重复计数,听起来好像很简单,但是用起来吧,真的一不小心就掉坑里了。
就拿咱们平时工作来说吧,统计有多少个不同的客户,有多少个不同的产品,这种需求简直不要太常见,对不对?
那传统的方法是啥呢?就是用那个`SUM+COUNTIFS`公式组合,听着就头大,你说它能解决问题吧,确实能,但是那个公式,我的天,简直绕晕,一长串,写的时候得小心翼翼,生怕哪里写错了,而且过一段时间,自己都看不懂自己写的啥了,维护起来,那叫一个痛苦。
说白了,这公式太复杂了,理解门槛太高,不是专业玩Excel的,根本hold不住。
那今天就给大家介绍一个升级版,`Filter+Unique+COUNTA`,这个公式组合,简直就是Excel界的清流,简洁,直观,易于理解和使用,咱们先来拆解一下这个公式,`UNIQUE(B2:B9)`,这个函数是干嘛的呢?它是用来提取数据区域B2:B9中的唯一值,说白了,就是把重复的值都去掉,只留下一个。
然后呢,`COUNTA(UNIQUE(B2:B9))`,这个函数是用来统计唯一值的数量,适用于单条件,比如说,你要统计所有客户的数量,就可以用这个公式。
但是,如果你的数据有多个条件怎么办呢?那就要用到`FILTER`函数了,`FILTER(B:B,A:A=D2)`,这个函数是用来筛选A列等于D2对应值的B列数据,比如说,你要统计某个地区有多少个客户,就可以用这个公式,最后,把`FILTER`函数的结果再用`UNIQUE`和`COUNTA`函数处理一下,`COUNTA(UNIQUE(FILTER(B:B,A:A=D2)))`,就可以得到多条件筛选后的唯一值计数了。
怎么样,是不是感觉很简单,但是,这个公式也不是万能的,它有一个小小的缺陷,就是当筛选结果为空的时候,比如说,某个员工没有打卡记录,`FILTER`函数就会报错,那`COUNTA`函数就会得到一个错误值"1",这可不是我们想要的结果。
所以,为了解决这个问题,我们需要对这个公式进行一些优化,怎么优化呢?我们可以用`MIN`函数,`MIN(COUNTIFS(A:A,D2),COUNTA(UNIQUE(FILTER(B:B,A:A=D2))))`,这个公式,它的原理是这样的,`COUNTIFS(A:A,D2)`,这个函数是用来统计A列中等于D2的单元格数量,也就是未去重计数,它是用来判断该员工是否存在,然后,`MIN`函数会取`COUNTIFS`和`COUNTA(UNIQUE(FILTER...))`中的最小值。
如果员工存在记录,那`COUNTIFS`的结果肯定大于等于`COUNTA(UNIQUE(FILTER...))`,如果员工没有记录,那`COUNTIFS`的结果就是0,`MIN`函数就会返回0,这样就解决了空值筛选导致的错误计数问题了。
总结一下,`SUM+COUNTIFS`公式组合,通用性强,可以处理复杂情况,但是公式复杂,不易理解,维护成本高,适用于数据量大,逻辑复杂的场景,`COUNTA(UNIQUE(FILTER...))`公式组合,简洁明了,易于上手,但是空值筛选时存在错误,需要额外处理,适用于数据量小,逻辑简单的场景,而`MIN(COUNTIFS(A:A,D2),COUNTA(UNIQUE(FILTER(B:B,A:A=D2))))`公式组合,兼顾简洁性和准确性,解决了空值问题,适用于多数常见应用场景。
所以说,选择合适的工具才是关键,说到底,公式它就是一个工具,服务于数据分析需求,我们要理解公式的原理,灵活运用,不断尝试和优化,这样才能真正掌握Excel的精髓,而且,随着Excel等工具的更新,公式也会越来越强大,越来越易用,所以,我们要保持学习的热情,不断探索新的方法。
来源:然然课堂