Folder.Files的相对路径

时间:2017-06-08 18:18:09

标签: excel powerquery excel-2016 m

我有一个Excel文件,在同一文件夹中我有一个包含CSV文件的文件夹。使用From Folder查询,第一步将提供以下查询:

= Folder.Files("D:\OneDrive\Documents\Health\Concept2")

现在,我的笔记本电脑上的路径不一样,但Excel文件将始终位于Health目录中......

如果我尝试将相对路径传递给Folder.Files,我会收到错误,但是有办法解决这个问题吗?一个奇特的功能?我不知道的一些变量或事情,因为我在这个领域是一个全新的东西?

尝试1

= Folder.Files(".\Concept2")
= Folder.Files("Concept2")

DataFormat.Error:提供的文件夹路径必须是有效的绝对路径。

尝试2

= Folder.Files(Activeworkbook.Path & "\Concept2")

Expression.Error:无法识别名称“Activeworkbook.Path”。确保拼写正确。

2 个答案:

答案 0 :(得分:3)

据我所知,您无法在Power Query本身内部完全建立相对路径引用。但是,您可以在excel文件中设置相对路径引用,然后将其加载到Power Query中。

因此,在Excel文件中设置一个选项卡,并使用公式

创建一个单元格表
Folder.Files(DirectoryQuery{0}[ColumnName])

获取相关目录引用。将此表添加到Power Query中,然后您可以获取文件查询的相对目录,如

{{1}}

Where" DirectoryQuery"是从您的表和" ColumnName"创建的查询的名称。是表中列的名称({0}引用表中的第一行)。

答案 1 :(得分:-2)

= Folder.Files(Activeworkbook.Path & "\Concept2")