透视表疑难妙解,这个方法80%的人不知道
与 30万 读者一起学Excel
VIP学员的问题,明细表有的预付款日为空白,用透视表按月组合的时候出现问题,该如何解决?
透视表在组合的时候,要求是很严格的,只要存在一个空单元格或者文本的内容都不允许组合。
最简单的办法,就是将空单元格都输入日期,但是实际上,肯定会存在没有预付款日这种情况。这时,卢子又用了辅助列解决。
用TEXT函数将日期转换成年月的形式,不过有一个小小的问题,空单元格显示成1900-01。
=TEXT(D2,"e-mm")
不处理也不影响统计,如果再加上;;;效果会更好。e就是4位数的年,mm就是2位数的月,;;;就是将不是日期的全部显示空白。
=TEXT(D2,"e-mm;;;")
到这里本来问题已经解决,这时学员又提出了一个新要求,付款周期是按照25日结算月的,26日后的都算下一个月,透视表中如何处理?
这种特殊的月份处理,其实也挺常见的,我的第一份工作,就是26日以后当做下一月处理。
先用DAY函数提取日,判断是否大于25日,如果大于的显示1,否则显示0。EDATE函数就是将日期推后几个月,结合起来就是,如果大于25日就推后1个月,否则就是原来的日期。再结合TEXT函数将日期转换成年月的形式。
=TEXT(EDATE(D2,IF(DAY(D2)>25,1,0)),"e-mm;;;")
数据源处理完,剩下的插入透视表,将年月拉到行,金额拉到值就搞定了。
提取码:cg7b
推荐:没想到,按周、月、季度、半年、年组合,这些透视表都可以!
上篇:不就对个账,又是拆分表格,又是合并统计,这样折腾不累吗?
在使用透视表的时候,我经常用辅助列,因为直接用纯透视表经常会出问题,比如插入计算项(字段)。你在使用透视表的过程中,是否遇到必须用辅助列才能解决的情况?
作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)
赞 (0)