打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel中PowerQuery的全自动动态路径

这种做法并不是一劳永逸的,路径变更以后,还是需要手动调整路径参数,只是相对方便一些而已。

在PowerBI中目前只能按照上述方式实现,但是如果是在Excel中利用PowerQuery来清洗数据,是可以做到自动更改路径地址的。

假设是从单一的文件中获取数据,以数据源文件为Excel工作簿为例,PowerQuery中【源】的代码是这样的:

= Excel.Workbook(File.Contents("D:\PowerBI星球\PowerQuery动态路径\示例数据.xlsx"), null, true)

现在要做的就是将这串代码中的路径文本动态化,方法很简单,只需要用Excel公式将当前的路径提取出来。

在PowerQuery查询所在的Excel工作簿中新建一个sheet,A2中录入文件名称,B2中输入公式:

=LEFT(CELL("filename"),FIND("[",CELL("filename"))-1)&A2

做成这样的一个表:

然后光标放到这个表的任意位置,在【数据】选项卡下,点击“来自表/区域”,

将这个表导入到PowerQuery编辑器中,

这样就得到了文件路径表,第1行路径列的数据可以用  文件路径{0}[路径]  表示,只需要将原查询中路径地址更改为这个代码就行了,

修改完参数后,可能会出现如下报错信息:

这种情况需要在文件>选项和设置>查询选项>隐私中,

将隐藏级别更改为“始终忽略隐私级别设置”

然后点击刷新即可。

如果源文件是文件夹,同样可以利用这种方法,先获取文件夹的地址:

按上述方式导入到PQ后,然后将获取文件夹数据的查询【源】代码中的路径更改为文件夹的路径即可:

这样处理以后,无论将文件移动到哪里,还是发给别人,都不用调整代码、直接刷新而不会出错。

该方法的关键是必须将PowerQuery查询所在的工作簿与源文件放到同一个路径下,这样获取本文件的路径,同时也就是源文件的路径。

最后说明一下,本文的方法仅适用于Excel,不适用于PowerBI,为什么强大的PowerBI反而没有这个功能呢?

其实很简单,因为在PowerBI中,还没有函数获取本文件的路径地址,而Excel通过cell函数就可以实现,上述方面正是利用了Excel的这个特性,实现了PowerQuery源数据路径的自动调整。


PowerBI星球的历史精华文章合辑


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
系统地学习Excel第01课,Excel概述
合并多个Excel工作表,你会吗?
震惊!你的PPT可能存在重大信息安全隐患
利用Powerquery,Excel也可以轻松网上爬取数据了
使用Excel的PowerQuery是一种什么体验
PQ-数据获取1:Excel文件数据源获取(导入)的几种方式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服