起因:因领导层需要将电商平台利润核算自动化,原始数据不可以动,所以需要用到公式
(PS:其实所谓自动化不是Python / VBA办公自动化,就是嵌套一堆公式,然后每月更新电商后台基础数据,就可以出来利润结果~)
正文:
普通方法1:
直接使用=SUM(1/COUNTIF(A1:A1000,A1:A1000))
普通方法2:
=SUMPRODUCT(1/COUNTIF(A1:A500,A1:A500))
但是:
上面的两个方法都有一个BUG,如果选中的区域有空,那么就会报错 #DIV/0!,因为是除法,有空,就意味着有0,除以0就会报错。
进化方法1:
=1/COUNTIFS(A:A,A2)
再对此列进行求和
进化方法2:
1、=COUNTIF($A$1:A3,A3)
1.1、需要锁定第一个单元格,下拉公式,这样区域就会不断增加,
2、=COUNTIF(B:B,1)
2.1、再计算结果为1的数量
进化方法3:
先进行计算当列有多少数值,再使用INDIRECT函数引用此数值,进行套用未进化的方法1 /未进化的方法2
因为此方法太麻烦,且不常用,故而就只是说一个概念留存~