日报、周报、月报、年报,一个公式搞定,再也不怕领导的各种要求了!

Excel知识 2年前 (2021) 天骄
0

学员的问题,她的领导要求比较多,需要知道当日、本周、当月、年累计的台数和金额。

日报、周报、月报、年报,一个公式搞定,再也不怕领导的各种要求了!

数据从经营报表中获取,根据能否过户、日期、金额三个条件判断。

日报、周报、月报、年报,一个公式搞定,再也不怕领导的各种要求了!
条件求和、计数有一个经典的函数SUMPRODUCT,一次就能将这所有问题都解决。
条件计数语法:
=SUMPRODUCT((条件区域1=条件1)*(条件区域2=条件2)*(条件区域n=条件n))
条件求和语法:
=SUMPRODUCT((条件区域1=条件1)*(条件区域2=条件2)*(条件区域n=条件n)*求和区域)

1.当日

判断条件能否过户为是,日期=A1单元格,台数是金额不等于0,将所有条件套进去就解决。

=SUMPRODUCT((营业报表!$D$2:$D$486=$A$1)*(营业报表!$A$2:$A$486="是")*(营业报表!$E$2:$E$486<>0))

金额的话,就再加个求和区域,最后的不等于0,也可以省略掉,反正0相加对总数没影响。

=SUMPRODUCT((营业报表!$D$2:$D$486=$A$1)*(营业报表!$A$2:$A$486="是")*营业报表!$E$2:$E$486)

2.本周

日期是本周,领导的要求比较特殊,从星期六开始算一周的第一天。还好WEEKNUM函数比较智能,不管从哪天算第一天都可以,第2参数为16就是从星期六开始。

日报、周报、月报、年报,一个公式搞定,再也不怕领导的各种要求了!
这个函数不能直接引用区域判断,否则会得到错误值,只能退而求其次用辅助列判断周数。
=WEEKNUM(D2,16)
日报、周报、月报、年报,一个公式搞定,再也不怕领导的各种要求了!
有了这个辅助列,就可以获得台数。
=SUMPRODUCT((营业报表!$F$2:$F$486=WEEKNUM($A$1,16))*(营业报表!$A$2:$A$486="是")*(营业报表!$E$2:$E$486<>0))
金额也就出来了。
=SUMPRODUCT((营业报表!$F$2:$F$486=WEEKNUM($A$1,16))*(营业报表!$A$2:$A$486="是")*营业报表!$E$2:$E$486)
3.当月
这个跟案例2很像,只需将WEEKNUM换成MONTH就行。MONTH可以直接对区域进行判断月份,允许不用辅助列。
台数:
=SUMPRODUCT((MONTH(营业报表!$D$2:$D$486)=MONTH($A$1))*(营业报表!$A$2:$A$486="是")*(营业报表!$E$2:$E$486<>0))
金额:
=SUMPRODUCT((MONTH(营业报表!$D$2:$D$486)=MONTH($A$1))*(营业报表!$A$2:$A$486="是")*营业报表!$E$2:$E$486)
4.年累计
这个最简单,因为数据都是2021年的,就不需要判断哪个年份。
台数:
=SUMPRODUCT((营业报表!$A$2:$A$486="是")*(营业报表!$E$2:$E$486<>0))
金额:
=SUMPRODUCT((营业报表!$A$2:$A$486="是")*营业报表!$E$2:$E$486)

数据如果只有几百行的时候,用这个函数挺好的,一旦数据很多,一些做电商的动不动就几万,几十万,那估计很卡。建议尽量用辅助列,然后结合COUNTIFS和SUMIFS,运算效率会快点。

链接:

https://pan.baidu.com/s/1CM7IEeuFA2pcIgZt6M9w7w

提取码:kev8

暂无评论

暂无评论...