1、点击【新建查询】→【从文件】→【从文件夹】,如图2-79所示,然后选择数据所在的文件夹,并点击【确定】。然后直接点击【编辑】,即可将所有Excel文件的信息加载至Power Query并处于编辑界面。
2、将工作簿加载到Power Query之后,可以看到,工作簿的所有属性信息都在新建的查询中,而这里面很多信息都是不需要的,比如工作簿名、类型等,我们只需要用到工作簿中的内容,因此选择【Content】列,并点击【开始】→【删除列】→【删除其他列】,如图2-80所示,这样可以将无关列删除。
3、接下来,需要把【Content】中的内容提取出来。切换到【添加列】选项卡→点击【自定义列】,如图2-81所示。然后在弹出的【添加自定义列】窗口中输入函数:Excel.Workbook([Content],true),通过Excel.Workbook把Content 里的内容提取出来,如图2-82所示。提示:注意Excel.Workbook()的第二个参数,我们通过指定True,实现了默认情况下将第一行作为标题,省去了后面提升和筛选标题行的操作。
4、点击新建的Test列右侧的扩展按钮,把所有字段扩展出来,如图2-83所示。
5、重复Step2中删除其他列,选中Test.Data列,然后点击【删除其他列】,然后点选Test.Data的扩展按钮,将Test.Data中的数据扩展出来,如图2-84所示。经过两轮的筛选,即可看到,目前所剩下的列已经是各工作簿中的数据表头了。
6、点击【确定】后即可得到最终的汇总结果。接下来,和2.7.1中 Step4相同的操作,将数据加载到Excel表中,可以看到,所有部门的数据均已正确合并到一起。通过使用此方法,我们可以快速对同一文件夹下的同结构Excel进行合并。而且将来数据更新后我们只需要在合并后的Excel表中点击【数据】→【连接】→【全部刷新】即可获得最新数据合并结果,一劳永逸。不仅如此,此时放置各部门Excel数据的文件夹已经成了一个动态容器:如果向文件夹中新增其他部门的数据,Power Query也会自动把数据合并进来。所以实际应用中,每个月只需要将各个部门发送的数据复制到此文件夹中,在总表中点击刷新即可。