如果我有一个可在线使用的 Excel 工作簿,并且该工作簿包含几个电子表格和一些 Power Query M 函数,是否可以从另一个工作簿调用这些函数?
我知道如何加载工作簿,Excel.Workbook(Web.Contents("url"))
但这只列出了可用的电子表格和表格,但没有列出可用的功能。
我的工作簿是公开的,我想在无需特殊授权的情况下访问其中的功能。
答案1
不支持此功能。但是,可以将 M 脚本存储在文本文件中并运行它们。
- 将查询的内容(从高级编辑器)复制到文件中。
- 使用它来访问该文件的内容:
= Text.FromBinary(File.Contents("path to your file"))
。我们称此步骤为Source
。 - 用于
Expression.Evaluate(Source, #shared)
评估该查询。Expression.Evaluate
将把文本值解释为代码。#shared
包含代码中的所有查询、函数和常量的列表;但是,它不包含当前查询的步骤。
如果您将其与其他数据源混合使用,则可能需要为每个源设置隐私级别或完全禁用隐私级别,您可以通过“隐私”部分下的“选项”对话框执行此操作。请记住,在禁用隐私级别的情况下对互联网上的未知文件使用此技术可能会导致您的数据泄露或泄露。