EXCEL|Power Query合并文件之Excel.Workbook()函数今天的内容也全部来自于袁佳林的书《Power Pivot与Power Query实战》。上一节咱们使用了合并文件功能,让 Power Query 按照默认的方式合并文件。这种功能虽然快捷,但是在查询列表中会生成很多无法删除的查询,并且在出现合并错误时很难找出原因。Power Query 中有专门用于提取数据文件的函数,它们可以从不同格式的文件中提取数据。Excel.Workbook () 函数就是其中之一,它的主要功能是从 Excel 格式的文件中提取数据。利用 Excel.Workbook () 可让数据合并过程更加简洁,并且可以灵活地获取和保留文件信息。其他数据提取类函数还有从 CSV 文件中提取数据的 Csv.Document ()、从网页文件中提取数据的 Web.Content () 等。使用从文件夹功能获取文件信息,将文件信息列表导入 Power Query 编辑器中,如下图所示。
选中 Content 列和 Name 列,删除其他列,然后新建自定义列。在自定义列中使用 Excel.Workbook () 函数对 Content 列中的内容进行解析,如下图所示。Excel.Workbook () 的第二个参数为 true 时,Power Query 会将 Excel 文件中的第一行用作标题,如果省略该参数,则需要手动提升标题。展开自定义列,选择所有的列,取消勾选 “使用原始列名作为前缀”,如下图所示。Excel 文件中的数据此时都在展开的 Data 列里面,如下图所示。读者需要牢牢记住以上步骤。将文件信息以列表形式展示在 Power Query 中,是所有的文件合并问题得以解决的出发点,因为将每一个文件的表格放在 Power Query 的单元格中,我们就可以灵活地进行批量处理了。
单击 Data 列右上方的展开图标就可以获得合并数据。单击图标之前,可以先选择需要保留的列,比如保留 Name 列用于获取数据日期,如下图所示。