分类汇总 辅助列,完成另类汇总

昨天有小伙伴给我这样一个表:
她的需求是:
1.按部门汇总
2.按往来单位汇总,如果往来单位只有一条信息,就不用汇总
3.按日期排序
下面姐就跟大家分享一下我的思路:

自定义排序

总结了她的要求,我们会发现,这个表格需要按3个条件进行排序,它们依次是部门、往来单位、日期,这就需要要用到自定义排序了。
首先,将鼠标放置在表格区域中的任意位置,单击【开始】—【排序和筛选】—【自定义排序】,里面默认有一行“主要关键字”,设置好后,我们可以“添加条件”,后添加的就是“次要关键字”,也可以按上下箭头调整关键字顺序,表格排序就是按这个顺序来排列的。
单击【确定】后,结果就出来了:

分类汇总

排好序后,单击【数据】—【分级显示】—【分类汇总】,分类字段选择“部门”,汇总项为“应收账款”,单击【确定】。
同样的步骤再操作一次,这次的分类字段选择“往来单位”,取消勾选“替换当前分类汇总”,如下图:
再点击【确定】后,就变成了这个样子:
姐刚想把表发给我闺蜜交作业,突然感觉好像漏掉了什么……
哦,想起来了,她还说“如果往来单位只有一条信息,就不用汇总”,很显然,分类汇总功能不能满足这项要求,怎么办呢……
有了!

辅助列

在F3单元格输入公式:
=IF(AND(COUNTIF($B$1:B2,B2)=1,RIGHT(B3,2)='汇总'),1,0)
这种嵌套函数,我一般是从里往外看:
最里面是COUNTIF函数和RIGHT函数,COUNTIF函数的统计区域是$B$1:B2, B1是行绝对引用, B2是相对引用。当公式向下复制时,就会变成$B$1:B3、$B$1:B4……一个不断扩展的区域,从这个动态区域中统计B列符合条件的单元格个数。
RIGHT(B3,2),用来提取B3单元格中右边的2个字符。
AND函数用来检查是否所有参数均为TRUE,当所有参数均为TRUE时,返回结果为TRUE,若任意参数为FALSE,返回结果就为FALSE。
AND(COUNTIF($B$1:B2,B2)=1,RIGHT(B3,2)='汇总')的意思是,当“COUNTIF的结果等于1,并且RIGHT的结果为'汇总’”时,则返回TRUE,否则为FALSE
IF函数为条件判断函数,当AND返回TRUE时,结果为1,否则为0.
下拉填充,结果如下:
这时我们再筛选结果是1的,删除行即可。

总结

说起来麻烦,其实理清思路后,分分钟就搞定啦。
下面说说辅助列的判断条件我是怎么想出来的:

首先观察数据规律,再从里往外写公式:根据”如果往来单位只有一条信息,就不用汇总“的要求,我们很容易想到用COUNTIF函数数一数有没有重复项;

只有这一个条件还不能轻易筛选出汇总行,通过观察,汇总行的字段都有”汇总“两个字,并且在最右侧。这样,RIGHT函数就呼之欲出啦~

得出的结果越简单就越容易进行后续的处理,所以想到用IF函数,它的返回结果只有两种

因为需要两个条件,所以IF的第一个参数要用AND(来判断是否同时满足条件(根据实际需要,若只满足其中一个条件即可,那这里就可以用OR函数)。

作者:Excel大表姐6
(0)

相关推荐