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

如何在Excel中匹配存在包含关系的产品名字段?求函数示例

纯产品名与带规格产品名的匹配方案

假设数据结构

  • 表1(纯产品名表):A列存储纯产品名(如Tylenol)
  • 表2(带规格产品表):B列存储带规格的产品名(如Tylenol 100mg 100s),C列存储需要匹配返回的关联数据(如价格、库存)

1. VLOOKUP+通配符匹配(兼容多数Excel版本)

在表1的B2单元格输入公式,下拉填充即可:

=IFERROR(VLOOKUP(A2&"*", 表2!$B:$C, 2, FALSE), "无匹配")
  • 逻辑:A2&"*"匹配以纯产品名开头的任意带规格名称
  • 表2!$B:$C是带规格产品名及关联数据的区域
  • 2表示返回区域中第2列的内容(即表2的C列)
  • FALSE确保只匹配符合通配符规则的条目,找不到时返回无匹配

如果纯产品名可能出现在带规格名称的任意位置,调整通配符位置:

=IFERROR(VLOOKUP("*"&A2&"*", 表2!$B:$C, 2, FALSE), "无匹配")

2. XLOOKUP匹配(Excel 365/2021及以上版本推荐)

XLOOKUP语法更直观,支持双向通配符:

=XLOOKUP("*"&A2&"*", 表2!$B:$B, 表2!$C:$C, "无匹配")
  • 逻辑:"*"&A2&"*"匹配包含纯产品名的任意带规格名称
  • 最后一个参数"无匹配"是找不到时的返回值,可按需修改

3. 判断是否存在(仅需确认匹配状态)

如果不需要返回关联数据,仅判断纯产品名是否在表2中,用COUNTIF更高效:

=IF(COUNTIF(表2!$B:$B, "*"&A2&"*")>0, "存在", "不存在")
  • 逻辑:COUNTIF统计表2中包含纯产品名的条目数量,大于0则说明存在

4. INDEX+MATCH组合匹配(灵活度更高)

适合需要自定义匹配规则的场景:

=IFERROR(INDEX(表2!$C:$C, MATCH(A2&"*", 表2!$B:$B, 0)), "无匹配")
  • MATCH找到符合通配符规则的第一个条目位置,INDEX返回对应位置的关联数据

注意事项

  • 若纯产品名存在多余空格,用TRIM(A2)替换公式中的A2,避免匹配失败,例如:VLOOKUP(TRIM(A2)&"*", ...)
  • 如果表2中有多个匹配条目,上述函数默认返回第一个匹配结果,需返回其他结果可结合SMALL等函数调整

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 00:42:46