PowerQuery:在数据源文件打开时刷新表查询

时间:2017-04-28 11:36:23

标签: excel excel-vba powerquery vba

我有一个excel工作簿,其中包含一个通过PowerQuery链接到众多数据源文件的表。用户很可能会在数据源文件中更新它们。我可以使用powerquery刷新我的表,而数据源文件是由另一个用户打开的。我不断收到消息:

[DataSource.Error]进程无法访问文件'......',因为它正由另一个进程使用。

2 个答案:

答案 0 :(得分:1)

过滤掉名称以"〜"。

开头的文件

答案 1 :(得分:0)

当我尝试找出如何做同样的事情时,我发现了这个主题。万一将来有人发现它,我将提到我如何应用MarcelBeug的解决方案。

代码就是这个

let Source = Folder.Files("MyFilePathHere\"),
#"Added Custom" = Table.AddColumn(Source, "Custom", each 
Excel.Workbook([Content],true)),

更改为

let Source = Folder.Files("MyFilePathHere\"),
#"Filtered Rows1" = Table.SelectRows(Source, each not Text.StartsWith([Name], "~$")),
#"Added Custom" = Table.AddColumn(#"Filtered Rows1", "Custom", each 
Excel.Workbook([Content],true)),

我通过GUI编辑器使用文件名上的文本过滤器进行了更改。过滤器为“不是开头”,值为“〜$”。