我不确定这是否可行,但这是合约:
我在包含广告资源列表的单个表格中有几张表格,而且我还有另一张表格,其中包含根据特定条件合并它们的表格。
问题在于,如果我创建一个新的库存类别,我会创建一个带有自己库存清单的新选项卡,但为了在合并表中包含该库存,我必须从新表创建一个新连接,然后进入合并表的Power Query Editor并将新表添加到Source = Table.Combine({table1, table2, table3, table4})
行。
所以基本上我想知道我是否可以对Source
行进行某种编辑,如果我们添加/减去工作表,它会自动更新查询源。即使我可以在那里使用范围,我们也可以在每次添加工作表时将工作表名称添加到列表中。基本上任何比在Power Query中更改代码更容易的事情。如果唯一的方法是以某种方式创建一个VBA宏和一个更新查询的按钮,那也没问题,但是你知道我能看到的任何资源都会受到赞赏,因为我只有最小的VBA经验。
我能找到的最接近的资料来源是:Updating Power Query Source,但解决方案听起来有些狡猾,我想知道是否有更清洁的东西。
答案 0 :(得分:3)
创建一个新的空白查询并将以下内容粘贴到其中:
let
Source = Excel.CurrentWorkbook()
in
Source
这将显示当前工作簿中所有表的列表。您现在可以筛选要组合的表。如果对表使用命名约定,则可以轻松地为以特定文本开头的表创建过滤器,例如“inv”。
然后展开表并删除包含表名的列。这使得M到
let
Source = Excel.CurrentWorkbook(),
#"Filtered Rows" = Table.SelectRows(Source, each Text.StartsWith([Name], "inv")),
#"Expanded Content" = Table.ExpandTableColumn(#"Filtered Rows", "Content", {"data1", "data2"}, {"data1", "data2"})
in
#"Expanded Content"
添加更多工作表和更多遵循该命名约定的表,您只需刷新查询。