【发布时间】:2022-08-08 20:39:58
【问题描述】:
背景:我最近接受了一份新工作,我正在培训我的替代者。我为公司建立了很多报告,其中大部分已保存到我的 OneDrive。我一直在将这些文件移动到受训人员可以使用的 SharePoint 网站,这要求我修复报告中的电源查询,以便当她刷新工作簿中的链接时,它会从另一个工作簿中提取数据相同的共享点。
问题:我正在使用 SharePoint 的“添加 OneDrive 的快捷方式”功能,因此我可以从我的文件资源管理器中访问文件,所以当我去选择文件时,它会根据我的用户名构建一个路径,从而阻止她由于文件路径不可访问,因此能够刷新工作簿。
我已采取的步骤:我阅读了这篇文章https://excel.tv/how-to-create-a-relative-file-path-in-power-query/,我认为这将我带向了正确的方向,除了它从位于硬盘驱动器上的所有文件的角度来看,而不是从 SharePoint 网站。当我将此公式输入到我在 SharePoint 上共享的文件中时:
=LEFT(CELL(“filename”,$A$1),FIND(“[“,CELL(“filename”,$A$1),1)-1)
它不是返回包含我的用户名的文件路径,而是返回一个 https 链接(例如https://sharepoint.com/teams/SharedHub),然后电源查询会调用错误,因为它不是有效的绝对路径。此外,作为参考,这里是高级编辑器中的代码块。
let
Filepath = Excel.CurrentWorkbook(){[Name=\"Filepath\"]}[Content]{0}[Column1],
Source = Excel.Workbook(File.Contents(Filepath & \"The SharePoint File.xlsx\"), null, true),
tbl_nexidia_Table = Source{[Item=\"tbl\",Kind=\"Table\"]}[Data]
in
tbl_Table
我还尝试使用 Get data --> From File --> From SharePoint Folder 构建一个新查询,但这似乎从 SharePoint 中提取了所有文件夹名称,我还没有弄清楚如何深入到特定工作簿从特定表中获取数据。
非常感谢这方面的一些帮助!
-
我肯定会监视这篇文章,看看会出现什么解决方案。我从未设法让 PQ 接受 SharePoint 文件的动态文件路径,因此我倾向于运行一些 VBA 来确定当前用户名并动态构建等效的本地路径。也就是说,我的版本中没有“来自文件/来自 SharePoint 文件夹”选项 - 我一直认为这可以解决我的问题。您确定无法使用该选项过滤结果吗?
-
不幸的是,除了定位 Excel 工作簿并从该工作簿中选择一个表并对其应用某些筛选器之外,我对 Power Query 的经验并不丰富。当我选择“来自 SharePoint 文件夹”选项时,它要求您放置 SharePoint 网站的根链接而不是特定位置,然后当它在 Power Query 中加载时,它只显示来自该 SharePoint 的所有文件的列表.我尝试过滤我需要的文件,但我不知道如何让它专门从中提取一些东西:-/
标签: excel sharepoint powerquery filepath