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

如何使用Excel公式批量筛选通讯录中包含指定关键词的行

Excel多关键词批量匹配通讯录方案

前置假设(可根据你的实际数据调整参数)

  • 通讯录联系人姓名统一存放在A列,A2开始为具体数据,A1表头为「联系人姓名」
  • 60个待匹配关键词统一存放在D列,D2到D61为具体关键词,D1表头为「待匹配关键词库」

方案1:Excel 365/2021及以上版本(支持动态数组,操作最简便)

在任意空白单元格(如B2)输入下方公式,回车后会自动输出所有命中关键词的联系人结果,无需手动下拉:

=FILTER(A2:A1000,BYROW(A2:A1000,LAMBDA(x,SUMPRODUCT(--ISNUMBER(SEARCH($D$2:$D$61,x))>0))),"无匹配结果")

参数说明

  • A2:A1000:替换为你实际的通讯录姓名存放范围
  • $D$2:$D$61:替换为你实际的关键词库存放范围,需保留绝对引用符号$避免范围偏移
  • 不需要区分大小写匹配保留SEARCH,需要区分大小写则替换为FIND
  • 要导出匹配联系人的整行全部信息,把开头的A2:A1000替换为你的整个通讯录数据范围(如A2:C1000)即可

方案2:Excel 2019及以下旧版本通用方案

第一步:单格匹配标记

在B2单元格输入下方公式,下拉到所有通讯录行的末尾,匹配到关键词的行会标记为「匹配」,未命中标记为「不匹配」:

=IF(SUMPRODUCT(--ISNUMBER(SEARCH($D$2:$D$61,A2)))>0,"匹配","不匹配")

第二步:导出匹配结果

选中整个数据表,点击顶部「数据」选项卡→「筛选」,点击B列表头的筛选按钮,只勾选「匹配」选项,筛选后的数据可直接复制导出。

注意事项

  • 若关键词包含*、?这类通配符,需要提前在特殊符号前加~转义,避免匹配出错
  • 若需要匹配完全等于关键词的内容而非包含关键词,把公式里的SEARCH($D$2:$D$61,x)替换为EXACT($D$2:$D$61,x)即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:15:09