总表输入数据,自动拆分到分表,你会吗?
HI,大家好,我是看见星光的的的前妻……我是随风。今天在某Excel交流群有个童鞋提问:
各位老师,我有一个总表类似这样的表,我现在想要在总表输入数据的时候,自动分类到分表中去。有什么好的办法没有?
很多人给方案,那我么我的方案是:数据透视表+列表
当时有人反驳:数据透视表不是只能汇总么?
现在我来阐述一下我的操作步骤:
Step 01:选择数据源任意单元格,Ctrl+T,点击确定,这样列表区域就设置好了。
Step 02:选择区域任意单元格,插入---数据透视表----现有工作表---选择位置—确定
Step 03:将数据透视表修改为自己需要的格式(注意:将分类依据的字段放到报表筛选页,以案例为例,将产品名称放到筛选字段)
Step 04 :修改透视表布局----报表布局---表格形式显示以及重复所有项目标签(2010以上版本)
Setp 05:将数据透视表按照产品名称拆分---分析----选项---显示报表筛选页—确定
Step 06:完成,删除总表的数据透视表
这个时候修改数据源总表还是不会修改分表的,需要我们选中数据源之后按下快捷键Ctrl+Alt+F5,或者直接点击【刷新】
这样就完成了,但是那位同学又说了,还需要点刷新?
可不可以录入完一个就自动填写过去?借助VBA即可。
Step 01:右键数据源工作表标签---查看代码
Step 02:将如下代码复制到代码窗口
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveWorkbook.RefreshAll
End Sub
这样,当我们增加数据源的时候,分表将会自动更新。
原理解释:
利用【列表】的自动扩展区域的特性作为数据透视表的动态数据源,将数据透视表拆分之后,实际上每个表里仍然是数据透视表,而且数据源一致,这样以达到修改数据源自动匹配相应的分表的目的,最后利用VBA的Change事件,当单元格内容发生变化的时候,刷新工作簿。
作者:随风