power query:从文件夹中的所有 Excel 个文件导入和转换数据,其中两个表位于同一个 sheet

powerquery: importing & transforming data from all Excel files in a folder where two tables on the same sheet

我正在尝试使用 PowerQuery 加载和转换文件夹中多个文件的每个 "Sheet1" 中包含的数据。

我遇到的问题是 "Sheet1" 中有两个表,我不知道如何合并这两个表,并保留共享的 Date/Weekday 标题。

我在互联网上搜索无果。我没有发现 PowerQuery 从文件夹中的所有 Excel 文件导入和转换数据,其中在相同的 sheet.[= 中有 TWO 表。 16=]

我包括两个表格的图像和所需的输出(前两行用于布局)。

注意:范围Sheet1!"A2:B2"被合并。

感谢收到的任何帮助。

我会将 2 个表格更改为正确的 Excel Table(例如 select 单元格、Ctrl-T 或插入/Table)。这将取消合并您的列标题。

然后您将在导航器中看到这两个表作为条目(当您使用获取外部数据/从文件/从 Excel)时。

谢谢。这是我下面 VBA 解决方案的一部分。

最后想出了两个办法

解决方案 1:VBA 脚本:遍历文件夹中的 Excel 个文件并找到相关的 table 标题。然后使用当前区域将粘贴复制到添加的 sheet 例如

''Code to loop files then...

 Set rngAdm = Worksheets("Figures").Range("A:B").Find("Daily Admissions", lookat:=xlPart)

 If Not rngAdm Is Nothing Then

    'Add sheet for creating Admissions table

    Sheets.Add.Name = "Adm"

   'Grab data and paste across

   rngAdm.CurrentRegion.Copy Sheets("Adm").Range("A1")

   'Clear merged cell

   Range("A1:B2").UnMerge

   'Code to transform......

然后我写了一些脚本来转换成一个干净的数据集并制作成 table。

解决方案 2:Powerquery - 使用两个查询循环遍历文件夹中的文件,使用删除行>删除交替行功能来指定模式以分别拉出感兴趣的 table,然后转换数据,然后合并两个查询。它能够为起始行和行数指定模式,让我不知道,隐藏在删除行标题后面。

备注: 我使用 VBA 遍历源文件夹并重命名文件,以便它们以正确的顺序加载。 然后我使用以下两个优秀的帖子来识别和删除重复项:

http://forum.powerpivotpro.com/forums/topic/power-query-remove-duplicates-keep-highest-id/ http://www.excelguru.ca/blog/2015/12/09/identify-duplicates-using-power-query/

通过按 ID 分组、组合排序 [Date] asc、排序 [Index] desc 并删除重复项 [ID],我能够仅保留每个重复集的最后导入行。

Q