Excel表格怎么一次查找多个关键字

用SEARCH或FIND配合SUMPRODUCT、INDEX和MATCH,让一个单元格同时对照一整列关键字,判断是否命中、命中哪一个,并列出避开空白关键字和大小写误判的做法。

在整理客户反馈、合同条款或商品清单时,经常需要判断一段文字里是否包含某几个词中的任意一个,比如备注里出现“退款”“投诉”“延迟”中的任何一个就要标红。如果只会用“查找”对话框,一次只能找一个词,几百行数据逐个查很费时间。Excel 表中搜索多个关键字,可以把关键字写成一列,用一条函数公式对每一行同时判断。

这篇文章适合经常处理文本数据、已经会用基本函数但还没有写过多条件文字匹配公式的读者。读完你能拿到三类公式:判断是否命中、返回命中的关键字、按命中结果筛选。下面的例子默认关键字写在 E2 到 E6,待检查的文字在 A 列。

Excel 表中搜索多个关键字,用什么函数公式?一句话结论:用 SEARCH 判断位置,再用 SUMPRODUCT 汇总

先把关键字列表固定在一列,然后让 SEARCH 逐个去查每个关键字在单元格里的位置,ISNUMBER 把找到的位置转换成 TRUE 或 FALSE,最后 SUMPRODUCT 把结果加总。加总大于 0,说明至少命中一个关键字。不同需求对应的做法如下:

你的情况推荐做法原因
只想知道是否命中任一关键字=SUMPRODUCT(--ISNUMBER(SEARCH(E2:E6,A2)))>0一条公式,返回 TRUE 或 FALSE,便于筛选
想知道命中的是哪一个关键字INDEX 加 MATCH 组合能直接显示关键字本身,方便统计
关键字区分大小写,如型号、编码把 SEARCH 换成 FINDFIND 严格区分大小写,且不支持通配符
只要求整个单元格等于某个关键字=COUNTIF(E2:E6,A2)>0这是完全匹配,不是包含匹配,别混用
关键字列表里有空白格在公式中加入“不为空”条件空白关键字会匹配所有文字,导致全部命中

开始之前:先确认这几点

1. 关键字是“包含”还是“完全相同”。 公式里的 SEARCH 和 FIND 判断的是文字中是否出现这段字符,所以“退款申请”也会被“退款”命中。如果你要的是整格完全一致,应该用 COUNTIF,两者结果会不同,选错会漏掉或多算数据。

2. 大小写是否重要。 SEARCH 不区分大小写,输入“excel”也能找到“Excel”。对英文品牌名、产品型号这类内容通常方便,但遇到“AB12”和“ab12”需要区分的编码,就要改用 FIND。

3. 关键字里是否含有通配符。 SEARCH 把问号和星号当作通配符,关键字“Q?”会匹配“QA”“Q1”等多种情况。如果关键字本身包含这两个符号,应先在前面加波浪号转义,或改用 FIND。

4. 关键字列表是否干净。 列表中有空白单元格时,SEARCH 会把空字符串视为任何文字都能匹配,整列数据都会被判定为命中。动手前先检查列表长度,删掉多余空行。

5. 数据来源是否可以直接复制。 如果关键字或待检查文字来自 PDF,文字需要能被选中复制。扫描件里的文字无法直接选中,要先做 OCR 识别,再把结果粘贴到 Excel,否则公式查不到任何内容。

在 Excel 里按关键字列表查找的步骤

  1. 建立关键字列表。 在 E 列从 E2 开始逐行写入关键字,例如“退款”“投诉”“延迟”,中间不留空行,列表尽量控制在几十个以内,便于检查。
  2. 选中结果单元格。 在 B2 输入判断公式,用于检查 A2 是否包含任一关键字。
  3. 输入判断公式。 输入 =SUMPRODUCT(--ISNUMBER(SEARCH($E$2:$E$6,A2)))>0,按回车,结果为 TRUE 表示命中。
  4. 排除空白关键字。 如列表可能留有空格,把公式改为 =SUMPRODUCT(($E$2:$E$6<>"")*ISNUMBER(SEARCH($E$2:$E$6,A2)))>0,只统计非空关键字。
  5. 返回命中的关键字。 在 C2 输入 =IFERROR(INDEX($E$2:$E$6,MATCH(1,INDEX(($E$2:$E$6<>"")*ISNUMBER(SEARCH($E$2:$E$6,A2)),0),0)),"未命中"),结果显示列表中第一个命中的词。
  6. 向下填充。 选中 B2 和 C2,拖动右下角的填充柄到最后一行数据,所有行同时计算。
  7. 需要区分大小写时替换函数。 把公式中的 SEARCH 换成 FIND,其余结构不变,再次检查结果是否符合预期。

做完后逐项核对

公式算出结果后,不要直接用于统计,先逐项检查。

检查项怎么看有问题怎么办
命中数量是否合理对照几十行数据手工判断,看结果是否一致检查关键字是否含有空格、标点或全角字符
是否出现“全部命中”如果几乎每行都是 TRUE,先看关键字列表中是否有空白格加上“不为空”条件,重新填充公式
大小写是否误判挑选几条大小写不同的数据比对需要区分时改用 FIND
通配符是否误匹配查看含问号或星号的关键字命中结果在符号前加波浪号,或改用 FIND
返回的关键字是否正确看 C 列是否与 B 列判断一致,未命中是否显示“未命中”如果列表顺序影响结果,调整关键字顺序,或改用计数方法
扫描件数据是否识别准确对照原文件抽查关键字所在行对 PDF 先做 OCR,并人工核对识别结果,OCR 和机器翻译都可能出错

📊 核心对比

实际工作中常见三种判断方式,各自适用的场景不同:

方式适合场景注意事项
SUMPRODUCT 加 SEARCH包含匹配,不区分大小写,如“备注里出现某词”关键字含问号或星号时会被当作通配符
SUMPRODUCT 加 FIND需要区分大小写或处理编码,如型号、产品代码不支持通配符,匹配更严格
COUNTIF整格完全相同的匹配,写法简单、计算快不能识别句子中间夹着关键字的情况

如果不确定用哪种,可以先用一小段样本数据(例如十行)分别试一遍,看结果是否符合人工判断,再套用到整张表。

❓ 常见问题(FAQ)

1. 关键字超过一百个,公式还能用吗?

可以用,但要注意计算量。关键字越多、数据行越多,SUMPRODUCT 的计算越慢。更稳妥的做法是把关键字分组,分开写几条公式,或者把需要长期使用的列表单独保存在一个工作表里。

2. 查到的结果怎么只保留命中的行?

在判断列加上结果后,选中表头,使用“筛选”功能,只显示结果为 TRUE 的行。这样不需要改动原始数据,核对和复制都方便。

3. 为什么公式在别人的电脑上显示结果不一样?

多半是关键字列表的空白格、大小写设置或者区域的列表分隔符不同导致的。把列表和样本数据一起发给对方,并说明判断标准,能减少这类差异。

4. 关键字在 PDF 里,怎么把它们放进 Excel?

如果 PDF 是可以选中文字的电子版,直接复制粘贴即可。扫描版则需要先做 OCR,再复制。OmniDoc 桌面客户端的 PDF 编辑器支持 OCR,也可以把 PDF 导出为 Excel,之后再用上面的公式处理,导出后同样要核对内容。桌面客户端可以在 download.omnidoc.top 下载。

5. 能不能一次把命中的所有关键字都列出来?

用上面的公式只能返回第一个命中项。若要列出全部命中项,可以在 Excel 365 中尝试 TEXTJOIN 配合 IF 的写法,或者为每个关键字单独添加一列判断,这样更直观,也便于后续统计。

📝 总结

Excel 表中搜索多个关键字,核心是把关键字放进一列,用 SUMPRODUCT 加 SEARCH 判断是否命中,用 INDEX 加 MATCH 取出具体关键字。写公式前先确认包含与完全相同的区别、大小写要求和空白格问题,结果出来后抽样核对,就能放心用于统计。

打开 OmniDoc,处理你的表格文件

更新于 2026-11-04