Power Query - 如何创建相对路径
我们在前面介绍过,可以使用Power Query导入其他Excel文件中的数据。具体过程见下面的动图:
这个方法可以极大的方便我们建立自动化处理过程。但是这个方法有一个比较大的问题:
这个源文件使用的是绝对路径!
如果你查看这个Power Query查询的函数,就会发现:
这里引用的文件路径是写死的。
如果你用这种方法在你的机器上做好了一个查询,把这个文件作为模板发给同事,除非在他的机器上恰好有跟这个目录一摸一样的目录,否则,这个查询就会在刷新的时候报错。
这时,你可以采用本文下面的方法把这个绝对路径修改为相对路径
01
制作相对路径
首先,新建一个工作表,根据你的习惯起一个名字,比如,就叫做“Config”:
在Config工作表中,找一个单元格,比如B2,输入公式:
=LEFT(CELL("filename",$A$1),FIND("[",CELL("filename",$A$1),1)-1)
这个公式返回了这个工作表所在的路径。
下一步,定义名称。
我们为这个单元格B2定义一个名称:Path:
关于名称,可以参加文章关于Excel中的名称(Name),你需要知道的都在这里了
现在,回到刚才的查询中,
点击高级编辑器,
在len后面,源=...前面,添加一句代码:
Filepath = Excel.CurrentWorkbook(){[Name="Filepath"]}[Content]{0}[Column1],
然后将下面的“源=”代码修改为:
源 = Excel.Workbook(File.Contents(Filepath & "可乐产品销售数据.xlsx"), null, true),
大功告成!
在本文介绍的技巧中,我们使用了“高级编辑器”。这样我们可以初步了解PowerQuery的那些功能,实际上就是用这样的“代码”写成的。在我们的Power Query中级课程中,将为大家全面介绍Power Query M代码的使用。
赞 (0)