小伙伴们好啊,昨天老祝和大家分享了一个动态合并多个工作表的技巧动态合并多个工作表,数据再多也不怕。
有小伙伴提出一个非常现实的问题:在合并完成后,一旦将文件移动到其他位置,合并的数据就无法刷新了。
接下来,咱们以下图所示的数据为例,说说如何在移动文件时,咱们的查询仍然能自动刷新结果。
三个工作表中是某品牌的商品,在不同区域的销售记录。
步骤1:
新建两个工作表,分别重命名为“汇总表”和“路径表”,在“路径表”中输入公式,得到当前工作簿的完整路径,然后保存一下。
=CELL("filename")
单击A2单元格,然后将数据加载到数据查询编辑器里。
由于公式生成的路径中,还包含有工作表名称以及一对中括号,接下来咱们使用拆分列和替换的方法,提取出能使用的路径。
步骤2:
依次单击【主页】→【新建源】→【文件】→【Excel】,根据提示导入数据。
步骤3
在编辑栏中,将公式中表示路径的文本部分清除掉,改成:
表1{0}[路径.1]
其中的“表1”,就是刚刚导入的路径连接,{0} 表示第一行,“[路径.1]”就是咱们前面拆分列之后得到的新列名。
再将null改成 true,这样修改后,系统就可以自动识别出字段名称,并自动进行归类了。
但是此时会出现一个警告提示,咱们还要来个小手术:
依次单击【文件】→【选项和设置】→ 【查询选项】→设置全局隐私级别为“始终忽略隐私级别设置”。
然后点击一下刷新预览按钮,警告对话框就没有了。
步骤4
在数据查询编辑器中,使用筛选功能把多余的名称都排除掉,单击【Kind】字段的筛选按钮,在筛选菜单中选择“Sheet”的类型。
除此之外,还需要将在【Name】字段中,将“汇总表”和“路径表”也筛选掉,否则合并后会增加很多重复的记录。
步骤5:
按住Ctrl键不放,依次单击【Name】和【Date】字段的标题来选中这两列,单击鼠标右键→【删除其他列】。
接下来单击【Date】字段的展开按钮,将数据展开。
步骤6:
单击日期字段的标题,将格式设置为“日期”,然后依次单击【关闭并上载】→【关闭并上载至】,在弹出的【导入数据】对话框中,选择【仅创建连接】。
步骤7
切换到“汇总表”工作表中,在右侧的【查询&连接】窗格中,右键单击“动态合并多工作表中的数据”这个连接,选择“加载到”命令,将数据加载到工作表中。
操作完成后,将这个工作簿移动到任意位置,哪怕是修改文件名,再刷新也没有问题了。
今天的练习文件在此,你也试试吧。
https://pan.baidu.com/s/1ar8g9M8IE1j6SL0eAv9Zcw 提取码: ckr8