VLOOKUP如何返回所有匹配值?一个公式搞定多结果查找【高阶教程】

发布时间 - 2026-01-04 00:00:00    点击率:
VLOOKUP无法返回多个匹配值,可用四种方法解决:一、FILTER函数(Excel 365/2025+);二、INDEX+AGGREGATE组合(全版本兼容);三、TEXTJOIN+IF数组公式(合并显示);四、辅助列+COUNTIF(传统稳定方案)。

如果您在Excel中使用VLOOKUP函数查找某个值,但该值在数据源中出现多次,而VLOOKUP仅返回第一个匹配结果,则无法直接获取全部匹配项。以下是实现一次性返回所有匹配值的多种方法:

本文运行环境:MacBook Air M2,macOS Sequoia。

一、使用FILTER函数(Excel 365 / Excel 2025及以上)

FILTER函数专为动态数组设计,可自动筛选并返回满足条件的所有行,无需辅助列或复杂嵌套,是当前最简洁高效的多结果匹配方案。

1、确保您的数据区域已定义为结构化表格(如A2:D100),或明确指定查找列与返回列范围。

2、在目标单元格输入公式:=FILTER(返回数组, 查找列=查找值),例如:=FILTER(B2:B100,A2:A100=F2) 表示在A列中查找F2值,并返回对应B列所有匹配项。

3、若需返回多列结果(如同时返回姓名和部门),将返回数组设为多列区域,例如:=FILTER(A2:C100,A2:A100=F2)。

二、使用INDEX + AGGREGATE组合(全版本兼容)

该方法不依赖动态数组功能,适用于Excel 2010及更高版本,通过AGGREGATE函数忽略错误并逐个定位匹配行号,再由INDEX提取对应值。

1、在首个结果单元格(如G2)输入公式:=IFERROR(INDEX($B$2:$B$100,AGGREGATE(15,6,ROW($A$2:$A$100)/($A$2:$A$100=$F$2),ROW(A1))),"")

2、按Enter确认后,向下拖拽填充柄以生成后续结果;公式中ROW(A1)随行号递增,自动索引第1、第2、第3…个匹配项。

3、若需返回其他列(如C列),仅需将INDEX中的$B:$B0替换为$C:$C0,其余部分保持不变。

三、借助TEXTJOIN + IF数组公式(Excel 2016+,单单元格合并显示)

当只需在一个单元格内汇总所有匹配结果(用逗号分隔),而非逐行列出时,该方案可避免拖拽操作,适合报表摘要场景。

1、选中目标单元格(如G2),输入公式:=TEXTJOIN(", ",TRUE,IF($A$2:$A$100=$F$2,$B$2:$B$100,""))

2、按下 Ctrl + Shift + Enter(Windows)或 Command + Shift + Enter(macOS)以确认为数组公式;Excel 365用户可直接按Enter。

3、公式将扫描A2:A100中所有等于F2的行,并把对应B列值用顿号连接成单一字符串输出。

四、添加辅助列配合COUNTIF构建序号(传统稳定方案)

通过在原始数据旁插入辅助列,为每个重复值生成唯一序号(如“张三-1”“张三-2”),再结合VLOOKUP进行分次精确查找,逻辑清晰且易于调试。

1、在数据源右侧空白列(如E列)首行(E2)输入公式:=A2&"-"&COUNTIF($A$2:A2,A2),向下填充至数据末尾。

2、在查找区设置序号列(如H2起输入1,2,3…),并在I2输入公式:=VLOOKUP($F$2&"-"&H2,$E$2:$B$100,2,FALSE),其中$E$2:$B$100需调整为包含辅助列与目标返回列的实际区域(注意列顺序)。

3、向下拖拽I2公式,即可按序号逐个提取各匹配项;若某序号无对应结果,将返回#N/A,可用IFERROR包裹处理。


# excel  # windows  # macbook  # mac  # ai  # macos  # win  # cos  # gate  # if  # Filter  # 字符串  # 单元格  # 拖拽  # 行号  # 您的  # 若需  # 运行环境  # 第一个  # 多个  # 只需  # 设为 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何用好域名打造高点击率的自主建站?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  如何快速启动建站代理加盟业务?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  C++时间戳转换成日期时间的步骤和示例代码  如何在Windows环境下新建FTP站点并设置权限?  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  Laravel如何使用Gate和Policy进行授权?(权限控制)  如何用VPS主机快速搭建个人网站?  JS经典正则表达式笔试题汇总  Laravel如何集成Inertia.js与Vue/React?(安装配置)  Mybatis 中的insertOrUpdate操作  网站制作企业,网站的banner和导航栏是指什么?  如何用花生壳三步快速搭建专属网站?  网易LOFTER官网链接 老福特网页版登录地址  js代码实现下拉菜单【推荐】  香港服务器选型指南:免备案配置与高效建站方案解析  零服务器AI建站解决方案:快速部署与云端平台低成本实践  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  高端企业智能建站程序:SEO优化与响应式模板定制开发  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Laravel如何实现API资源集合?(Resource Collection教程)  高端网站建设与定制开发一站式解决方案 中企动力  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Android 常见的图片加载框架详细介绍  浅谈Javascript中的Label语句  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  WEB开发之注册页面验证码倒计时代码的实现  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何在七牛云存储上搭建网站并设置自定义域名?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  Laravel怎么在Controller之外的地方验证数据  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  iOS正则表达式验证手机号、邮箱、身份证号等  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  千库网官网入口推荐 千库网设计创意平台入口  七夕网站制作视频,七夕大促活动怎么报名?  JavaScript常见的五种数组去重的方式  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  php打包exe后无法访问网络共享_共享权限设置方法【教程】