MS Power Query:跨工作簿和 xlam 共享查询?

MS Power Query: Sharing Queries across workbooks and xlam?

在 Power Query 中,是否可以在一个工作簿中构建查询并从另一个工作簿访问它?特别是,我可以将一整套查询构建到某种库中吗?我正在考虑一个 .xlam 文件,然后让多个 .xlsx 文件加载 .xlam 并使用查询

真的 想要远离将查询定义从一个工作簿复制粘贴到另一个工作簿。即使是中型项目也无法维护。

我已阅读 并非常感谢 @dfresh22 自动复制查询的功能。但这仍然不存在。

我尝试在工作簿中创建查询,将其保存为 .xlam,然后从第二个工作簿引用 xlam。但是我找不到任何方法来访问查询。

我 运行 Excel 2013.

我是不是想错了?

一种方法是将查询存储在某个文件中,使用 File.Contents 访问该文件,然后对该文件的内容使用 Expression.Evaluate,如 [=12= 中所述] 博客 post。该步骤看起来像这样:

Expression.Evaluate(Text.FromBinary(File.Contents(file_path_to_file_with_queries)), #shared)

#shared 是一个特殊值,returns 记录了所有查询和库函数。

这种方法存在一些问题:

  • 某些类型的静态分析,例如用于在当前文件中查找数据源的静态分析,不适用于从文件加载的查询
  • 文件内容可能会更改,这可能会破坏您的查询或连接到您不知道的来源。
  • 工作簿的便携性较差,因为查询不会随它移动。与您共享工作簿的任何人都必须有权访问包含您的查询的文本文件。

您还可以将查询和函数存储在 github。请参阅此处的示例:https://github.com/tycho01/pquery(名为 Load.m 的文件)