Power Query中List.ContainsAll返回FALSE问题排查求助
解决Power Query中List.ContainsAll始终返回FALSE的问题
嘿,我马上就发现问题所在啦!你当前写的公式List.ContainsAll({[Numbers]},{1,2,3,4,5})有两个关键错误:
- 参数顺序搞反了:List.ContainsAll的正确语法是
List.ContainsAll(要检查的目标列表, 必须包含的元素列表),你把两个参数的位置完全弄颠倒了。 - 多余的嵌套列表:你用
{[Numbers]}把列值包裹成了嵌套列表(比如如果[Numbers]本身是{1,2,3},那{[Numbers]}就变成了{{1,2,3}}),函数会去检查这个嵌套列表里是否包含1、2、3、4、5这些元素,显然不可能满足,所以一直返回FALSE。
正确的公式写法
直接调换参数顺序,并且去掉[Numbers]外面的大括号即可:
List.ContainsAll([Numbers], {1,2,3,4,5})
额外验证提示
如果调整后还是有问题,先确认你的[Numbers]列确实是列表类型:在Power Query编辑器里看列头的图标,列表类型会显示一个{}的标志。如果它是文本类型(比如像"1,2,3"这样的字符串),那你需要先把它转换成列表,示例代码如下:
List.ContainsAll(List.Transform(Text.Split([Numbers], ","), each Number.From(_)), {1,2,3,4,5})
内容的提问来源于stack exchange,提问作者Peter Hui
相关产品推荐
相关产品推荐

