You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel Power Query:匹配添加ITEM字段及多条件匹配错误排查

Power Query 需求与问题处理

初始需求

现有Overview和Data两个Query,当前用公式=Data{[NAME.1=[NAME.1]]}能匹配对应行,需要修改公式只提取ITEM列或第0列的数据。

  • 直接调整公式即可:
    • 提取ITEM列:=Data{[NAME.1=[NAME.1]]}[ITEM]
    • 提取第0列:=Data{[NAME.1=[NAME.1]]}{0}

扩展需求

合并Query时,优先匹配NAME.1字段,无匹配结果时再匹配NAME.2字段,将ITEM结果合并至同一列。

  • 用try...otherwise嵌套实现优先级匹配:先执行NAME.1的匹配逻辑,失败则触发NAME.2的匹配。

问题排查

使用公式=try Data{[NAME.1=[NAME.1]]}[ITEM] otherwise Data{[NAME.2=[NAME.2]]}[ITEM]时,部分无匹配项返回错误值,需修正为返回null。

  • 给otherwise中的匹配逻辑也添加try...otherwise,确保两次匹配都失败时返回null,修正后公式:
    = try Data{[NAME.1=[NAME.1]]}[ITEM] otherwise try Data{[NAME.2=[NAME.2]]}[ITEM] otherwise null
    

代码疑问

修改Merge代码为多字段匹配后,对{"ITEM", each [ITEM]{0}, Int64.Type})的用法存疑,实际ITEM字段为字母数字组合。

  • 问题出在数据类型指定:Int64.Type是64位整数类型,与字母数字混合的文本字段不兼容,需改为type text,修正后的代码片段:
    {"ITEM", each [ITEM]{0}, type text}
    
  • 额外说明:each [ITEM]{0}用于从匹配到的结果列表中取第一项;如果能保证匹配结果始终为单行,也可以直接写each [ITEM]。

内容的提问来源于stack exchange,提问作者MMM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 06:07:14