You need to enable JavaScript to run this app. Excel如何查找并拼接单元格内匹配到的多个关键词
优惠活动
大模型
产品
解决方案
定价
更多

Excel如何查找并拼接单元格内匹配到的多个关键词

可输出所有匹配关键词的Excel实现方法

你现在用的 =XLOOKUP(1,--ISNUMBER(SEARCH($C:$C,A1)),$C:$C,"no match",2),本身的逻辑就是找到第一个符合匹配条件的结果就返回,所以碰到A列单元格同时包含C列多个关键词的场景,只能输出最先检索到的那一个,没法把所有命中的关键词都列出来。

不同Excel版本的替换方案

  • 适配Excel 365、Excel 2021及以上带动态数组功能的版本:
    直接在B1单元格输入下面的公式,下拉填充就能自动匹配所有行:
=LET(
  matched_items, FILTER($C:$C, ISNUMBER(SEARCH($C:$C, A1)), ""),
  IF(matched_items="", "no match", TEXTJOIN("、", TRUE, matched_items))
)

这个公式会逐行检查C列所有关键词是否在对应A列的内容里存在,把所有命中的关键词都筛出来;如果没找到任何匹配项就返回"no match",找到的话就用顿号把所有关键词拼成完整字符串。比如A单元格同时提到Orange、Yellow两个关键词,会直接输出Orange、Yellow,不会漏匹配项。

  • 适配没有动态数组、但支持TEXTJOIN函数的旧版本Excel:
    把公式里的整列引用换成实际存放关键词的固定范围(比如C1到C100,别直接用整列引用,不然跑起来会卡),输完公式按Ctrl+Shift+Enter确认成数组公式就能用:
=TEXTJOIN("、", TRUE, IF(ISNUMBER(SEARCH($C$1:$C$100, A1)), $C$1:$C$100, ""))

实用调整提示

  • SEARCH默认是不区分大小写的模糊匹配,如果需要严格按大小写核对关键词,把公式里的SEARCH换成FIND就行。
  • 要是拼接的时候不需要顿号分隔,把TEXTJOIN里的第一个参数"、"改成你需要的分隔符(比如空格、半角逗号)就可以。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.23 19:27:03