Power Query 提供了一系列方法来访问托管在 SharePoint 或 Microsoft OneDrive for Work 或 school 上的文件。
浏览文件
注释
目前,只能浏览 Power Query Online for PowerApps 中经过身份验证的用户的 OneDrive 工作或学校文件。
警告
此功能要求浏览器允许第三方 Cookie。 如果浏览器阻止第三方 Cookie,则显示 “浏览 ”对话框,但为空,没有关闭对话框的选项。
使用以下任何连接器在 PowerApps 中创建数据流时,Power Query 会在文件路径或 URL 文本框旁边提供“浏览 OneDrive”按钮:
选择此按钮时,系统会提示你完成身份验证过程。 完成此过程后,将显示一个新窗口,其中包含 OneDrive 中所有经过身份验证的用户文件,供工作或学校使用。
可以选择所选的文件,然后选择 “打开 ”按钮。 选择 “打开”后,将返回到初始连接设置页面,其中 “文件路径”或“URL ”文本框现在保存从 OneDrive for Work 或 school 中选择的文件的确切 URL。
可以选择窗口右下角的 “下一步 ”按钮继续处理并获取数据。
从 Web 连接器使用文件 URL
通过浏览器访问您的 OneDrive 商业版或学校版的存储位置。 右键单击要使用的文件,然后选择 “在 Excel 中打开”。
注释
浏览器界面可能与下图不完全相同。 有多种方法可以在 Excel 中选择“在 Excel 中打开 ”,以便在 OneDrive for work 或学校浏览器界面中打开文件。 可以使用任何允许在 Excel 中打开文件的选项。
在 Excel 中,选择 “文件>信息”,然后选择“ 复制路径 ”按钮。
若要使用刚在 Power Query 中复制的链接,请执行以下步骤:
选择“ 获取数据>Web”。
在“ 从 Web ”对话框中,选择 “基本 ”选项,并将链接粘贴到 URL 中。
删除链接末尾的 ?web=1 字符串,以便 Power Query 可以正确导航到文件,然后选择“ 确定”。
如果 Power Query 提示您输入凭据,请选择 Windows (适用于本地 SharePoint 网站)或 组织帐户 (适用于 Microsoft 365 或适用于工作的 OneDrive 或学校网站)。 选择 “连接”。
注意
使用托管在 OneDrive 个人版上的文件时,您要连接的文件需要是公开可用的。 设置此连接的身份验证方法时,请选择 “匿名 ”选项。
出现 导航器 对话框时,可以从 Excel 工作簿中找到的表、工作表和范围列表中选择。 从这里开始,您可以像使用任何其他 Excel 文件一样使用 OneDrive 工作或学校文件。 可以创建报表并将其用于数据集,就像对任何其他数据源一样。
注释
若要在 Power BI 服务中使用 OneDrive for work 或 school 文件作为数据源,并在为该文件启用 服务刷新 后,请确保在配置刷新设置时选择 OAuth2 作为 身份验证方法 。 否则,尝试连接或刷新时可能会遇到错误(例如 ,未能更新数据源凭据)。 选择 OAuth2 作为身份验证方法可修正凭据错误。
SharePoint 文件夹连接器
您可以在SharePoint 文件夹文章中阅读有关如何连接到您的 SharePoint 网站上托管的文件的详细分步指南。
成功建立连接后,系统会提示你提供一个表预览,其中显示了 SharePoint 网站中的文件。 选择窗口右下角的 “转换数据 ”按钮。
选择“ 转换数据 ”按钮可转到名为 “文件系统”视图的数据视图。 此表中的每一行都表示在 SharePoint 网站中找到的文件。
该表具有一个名为 Content 的列,其中包含二进制格式的文件。 “ 内容” 列中的值的颜色不同于表其他列中的其余值,指示这些值是可选的。
在“内容”列中选择二进制值时,Power Query 会自动在查询中添加一系列步骤,以导航到该文件并尽可能解释其内容。
例如,从上图中显示的表中,可以选择其中第二行,其名称字段的值为02-February.csv。 Power Query 会自动创建一系列步骤来导航文件并将文件的内容解释为 CSV 文件。
注释
在导航到所选文件之前,可以通过应用筛选器、排序和其他转换来与表进行交互。 完成这些转换后,选择要查看的 二进制 值。
面向工作或学校的 OneDrive 使用体验
SharePoint 文件夹连接器及其体验也适用于 OneDrive 上托管的工作或学校的文件。 但是,需要使用的 URL 不同于要用于 SharePoint 网站的 URL。 若要查找唯一 URL,请转到 OneDrive for work 或 school 门户,并从浏览器复制 URL。 此 URL 可能类似于以下示例:
https://contoso-my.sharepoint.com/personal/user123_contoso_com/_layouts/15/onedrive.aspx
不需要完整的 URL,但只需要前几个部分。 需要在 Power Query 中使用的 URL 具有以下格式:
https://<unique_tenant_name>.sharepoint.com/personal/<user_identifier>
例如:
https://contoso-my.sharepoint/personal/user123_contoso_com
SharePoint.Contents 函数
虽然 SharePoint 文件夹连接器为你提供了一种体验,你可以在其中同时查看 SharePoint 或 OneDrive for Work 或 School 网站中提供的所有文件,也可以选择其他体验。 在此体验中,你可以浏览 SharePoint 或 OneDrive for work 或 school 文件夹,并访问你感兴趣的文件夹或文件。
此体验通过 SharePoint.Contents 函数提供。 若要使用此函数,请执行以下步骤:
创建空白查询。
将公式栏中的代码更改为
SharePoint.Contents("url"),其中url是用于 SharePoint 文件夹连接器的相同格式。 例如:SharePoint.Contents("https://contoso.sharepoint.com/marketing/data")注释
默认情况下,此函数尝试使用 SharePoint API 版本 14 进行连接。 如果不确定 SharePoint 网站正在使用的 API 版本,可能需要尝试使用以下示例代码:
SharePoint.Contents("https://contoso.sharepoint.com/marketing/data", [ApiVersion="Auto"])Power Query 要求您为连接添加一种身份验证方法。 使用用于 SharePoint 文件连接器的相同身份验证方法。
穿梭于不同的文档以找到你感兴趣的特定文件夹或文件。
例如,假设 SharePoint 网站包含 共享文档 文件夹。 可以在该文件夹的“内容”列中选择“表”值,并直接导航到该文件夹。
在此 “共享文档 ”文件夹中,有一个文件夹,公司在其中存储所有销售报表。 此文件夹名为 “销售报表”。 可以为该行选择“内容”列上的“表”值。
使用 “销售报表 ”文件夹中的所有文件,可以选择“ 合并文件 ”按钮(请参阅 “合并文件概述”),将此文件夹中所有文件的数据合并到单个表。 或者,可以通过从“内容”列中选择“二进制”值直接导航到所选的单个文件。
注释
函数 SharePoint.Contents 提供的体验对于处理大量文件的 SharePoint 和适用于工作或学校的 OneDrive 环境来说是最佳的。