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

如何在Google Sheets中实现多查找拼接以完成订单汇总

Google Sheets:订单ID匹配库存名称并拼接明细

核心解法

不用脚本,靠原生函数组合就能搞定:拆分CSV格式的订单ID → 匹配库存表的商品名 → 拼接成可读明细,支持隐藏辅助列优化性能。

前提假设(对应你的表格结构)

  • 库存表:表名库存,A列=商品ID(格式可控,建议设为文本),B列=商品名称
  • 订单表:表名订单,某列(比如C列)存CSV格式的订单ID(如101,103,105),目标列(比如D列)生成拼接后的明细

方案1:单公式直接输出(无需辅助列)

在订单表目标单元格(如D2)粘贴以下公式,下拉填充即可:

=TEXTJOIN("、", TRUE, XLOOKUP(SPLIT(C2, ","), 库存!A:A, 库存!B:B, "[无匹配商品]", 0))

公式拆解

  • SPLIT(C2, ","):把CSV格式的ID字符串拆成单个ID的数组
  • XLOOKUP(...):用每个ID去库存表A列匹配,返回对应B列的商品名;找不到就显示[无匹配商品]
  • TEXTJOIN("、", TRUE, ...):把所有匹配到的商品名用顿号拼接,自动忽略空值

方案2:隐藏辅助列(大表格更流畅)

如果订单ID数量多,单公式可能卡顿,拆分到隐藏列更高效:

  1. 插入辅助列1(比如E列,右键设为隐藏),E2输入:=SPLIT(C2, ","),拆分ID为单个单元格
  2. 插入辅助列2(比如F列,隐藏),F2输入:=XLOOKUP(E2, 库存!A:A, 库存!B:B, "[无匹配商品]", 0),下拉填充到对应行
  3. 目标列D2输入:=TEXTJOIN("、", TRUE, F2:F),一键拼接结果

格式注意事项

  • 商品ID强制设为文本格式:避免数字ID因自动转格式(比如带前导0的ID变成纯数字)导致匹配失败
  • CSV分隔符用英文逗号:中文逗号会让SPLIT函数无法正确拆分
  • 如果订单ID带数量(比如101×2,103×1),可以用这个增强版公式:
    =TEXTJOIN("、", TRUE, XLOOKUP(LEFT(SPLIT(C2, ","), FIND("×", SPLIT(C2, ","))-1), 库存!A:A, 库存!B:B, "[无匹配商品]", 0)&"×"&RIGHT(SPLIT(C2, ","), LEN(SPLIT(C2, ","))-FIND("×", SPLIT(C2, ","))))
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 18:52:41