通过 PowerQuery 从 Excel 加载 SharePoint Online 列表(带有查找列)数据

Posted

技术标签:

【中文标题】通过 PowerQuery 从 Excel 加载 SharePoint Online 列表(带有查找列)数据【英文标题】:Load SharePoint Online list (with lookup columns) data from Excel via PowerQuery 【发布时间】:2021-06-21 11:04:16 【问题描述】:

我是 Power 查询的新手,但不是 SharePoint。 我想要做的是在 Excel 中显示我在 SharePoint 中的内容。 我创建了一个非常简单的示例。

这是我的 SharePoint 列表: SharePoint List

我有 2 列。标题(默认列)和 LU1(外部列表的查找列,启用多值)

现在,在 Excel 数据中 > 获取数据 > 从 Online Services > 从 SharePoint Online 列表 我尝试了两种可能的方式:

    1.0 2.0(测试版)

1. 1.0 连接后,选择 LU1 列表并选择两列,我单击 OData_MD1 列右上方的图标。 在“加载列名”几秒钟后...“没有找到列” no columns were found

2.0(测试版) 连接后,选择 LU1 列表并选择两列,单击 MD1 列右上方的图标。 现在我可以“扩展到新行”或“提取值...”。

如果我扩展到新行 I Expand to New Rows 列值从“列表”变为“记录” 所以我再次点击右上角的图标,我可以选择要显示的字段 Select lookupValue 但是MD1列中有多个值的行是重复的,这不是我想要的结果 splitted rows

所以我提取值 我选择用逗号分隔值 comma separated ....但我收到“错误”:(

Errors

我做错了什么? 非常感谢提前

【问题讨论】:

当您单击其中一个错误单元格时,错误描述是什么? 【参考方案1】:

我找到了解决方案。 我将功能从:

= Table.TransformColumns(#"Removed Other Columns", "MD1", each Text.Combine(List.Transform(_, Text.From), ","), type text)

到:

= Table.TransformColumns(#"Removed Other Columns", "MD1", each Text.Combine(List.Transform(, each Text.From([lookupValue])), ", "), 输入文本)

当然,奇怪的是他们把功能准备好并且可以选择,但后来就出错了......

【讨论】:

我必须通过字段名称更改“lookupValue”(本例中为“MD1”)。否则效果很好!谢谢

以上是关于通过 PowerQuery 从 Excel 加载 SharePoint Online 列表(带有查找列)数据的主要内容,如果未能解决你的问题,请参考以下文章

[PowerQuery]Excel 如何开启PowerQuery组件

[PowerQuery]Excel 如何开启PowerQuery组件

[PowerQuery]Excel 如何开启PowerQuery组件

[PowerQuery]Excel 如何开启PowerQuery组件

PowerQuery在Excel中手动刷新数据连接

PowerQuery在Excel中手动刷新数据连接