INDEX+MATCH组合教程:查找函数之王

INDEX+MATCH组合教程:查找函数之王

效率小本本 · 第8篇

一、为什么学了VLOOKUP还要学INDEX+MATCH?

如果你已经学会了VLOOKUP,恭喜你,你已经超越了80%的Excel 效率工具用户。但说实话,VLOOKUP有三个致命痛点,工作中用得越多,越觉得难受:

痛点1:只能从左往右找,反向查找直接罢工

办公效率工具要求查找值必须在数据区域的第一列。如果你要根据姓名查工号,但姓名列在工号列右边?对不起,VLOOKUP做不了。你要么把列挪来挪去,要么用IF{1,0}这种邪门歪道,又慢又容易错。

痛点2:插入/删除列就报错,公式全崩

VLOOKUP的第三个参数是列号——你硬编码写死了"第3列"。一旦中间插入一列,所有列号都变了,几十个公式一起#REF!,改到你怀疑人生。做过月度报表的同学,肯定懂这种痛。

痛点3:多条件查找太麻烦,得加辅助列

想同时按姓名和部门两个条件匹配数据?VLOOKUP做不到。你得先合并一列"姓名+部门"的辅助列,再去查找。数据量大、条件多的时候,辅助列能把表格撑爆,而且还容易出错。

而INDEX+MATCH这个组合,完美解决了上面所有问题。它被Excel高手称为"查找函数之王",不是没有道理的。今天这篇,我们从基础到实战,一步一步带你彻底搞懂它。

二、INDEX函数:表格里的GPS

INDEX的作用很简单——给它一个区域,告诉它第几行第几列,它就把那个单元格的值取出来。就像表格里的GPS定位。

语法:=INDEX(区域, 行号, 列号)

例子1:取第2行第1列

返回A2的值"张三"。

例子2:省略列号(单列数据)

返回A3的值"李四"。区域只有一列时,列号可省略。

例子3:行号为0返回整列

返回C列整列数据,常用于动态引用。

三、MATCH函数:找位置的高手

MATCH的作用和INDEX互补——它不是取值,而是找位置。给它查找值和查找范围,告诉你在第几行(或第几列)。

语法:=MATCH(查找值, 查找区域, 匹配类型)

匹配类型:0=精确匹配(最常用),1=模糊匹配升序,-1=模糊匹配降序

例子1:精确匹配——找"王五"在第几行

返回4。找不到就返回#N/A。

例子2:模糊匹配——找分数等级区间

E列是分数下限(0,60,80,90),F列是等级:

返回2。找"小于等于查找值的最大值"的位置,75≥60且<80,所以返回第2行。

例子3:横向查找——找"工资"在第几列

返回3。MATCH既能找行也能找列。

四、组合原理:为什么它是查找之王

MATCH找位置,INDEX根据位置取值。一个找路,一个拿东西,完美配合。

基本公式:

三大核心优势:

方向自由:查找列和返回列位置随意,左右都能查

不怕插列:用列引用而非列号,插删列不崩

组合灵活:可嵌套多个MATCH,实现高级玩法

五、5个实战案例,从入门到精通

案例1:基础查找——根据姓名查工资

这是最基础的用法,也是你日常工作中会用得最多的场景。假设A列是姓名,C列是工资,要在E2输入姓名,F2自动返回对应工资:

解读一下:MATCH(E2,A:A,0)找到姓名在A列第几行,假设张三在第2行,MATCH返回2;然后INDEX(C:C,2)取C列第2行的值,就是张三的工资。看起来和VLOOKUP差不多?别急,往下看你就知道区别了。

案例2:反向查找——VLOOKUP做不了的事

C列工号,A列姓名,根据工号查姓名(查找列在右边):

写法完全一样,谁左谁右根本无所谓。这就是INDEX+MATCH最直观的优势。

案例3:多条件查找——两个条件匹配唯一值

实际工作中,经常需要同时满足两个条件才能定位到唯一值。比如同名叫张三的有两个,一个在销售部,一个在技术部,你要同时按姓名+部门来查工资。公式写法:

注意:这是数组公式,Excel 2019及更早版本需要按Ctrl+Shift+Enter确认,365和2021版直接回车即可。

原理很简单:E2&F2把两个条件拼成一个字符串"张三销售部",A:A&B:B把姓名列和部门列也两两拼成字符串,然后MATCH在里面精确匹配。找到位置后,INDEX去工资列取值。不用加辅助列,公式干净利落。

案例4:动态引用——配合下拉菜单自动切换

这个技巧做动态报表特别好用。做一个姓名下拉菜单,旁边的表格自动显示这个人的所有信息。老板选谁看谁的,逼格满满。

做法分两步:第一步,用数据验证做一个姓名下拉菜单(第6篇教程讲过,忘了的同学翻回去看)。第二步,写公式:

这里用了两个MATCH!第一个MATCH找行(姓名在第几行),第二个MATCH找列(字段名在第几列)。行和列都是动态的,你换姓名、换字段,公式都自动算。这就是INDEX+MATCH最强大的地方——双向查找,横竖都能动。

案例5:区间查找——模糊匹配评等级

根据分数查等级(60以下不及格,60-79及格…)。E列下限,F列等级:

MATCH第三个参数写1(模糊升序),找到小于等于分数的最大下限,INDEX取对应等级。比嵌套IF简洁多了。

六、常见错误与排查

N/A —— 找不到匹配值

检查两边有没有空格、数字格式不一致。用TRIM和CLEAN清洗数据,或套IFERROR容错:=IFERROR(原公式,"未找到")。

REF! —— 引用了不存在的单元格

INDEX区域和MATCH区域范围不一致。最保险的写法是引用整列(如A:A),就不会越界。

VALUE! —— 参数类型错误

常见于多条件查找数组公式没按Ctrl+Shift+Enter,或MATCH查找区域选了多行多列(必须是单行或单列)。

七、三大查找函数对比总结

有人问:XLOOKUP都出了,还学INDEX+MATCH?回答:XLOOKUP虽好,但只有Excel 2021+/365有,老版本打开直接#NAME?。而INDEX+MATCH全版本通用。

对比维度

VLOOKUP

INDEX+MATCH

XLOOKUP

查找方向

只能从左到右

任意方向

任意方向

插入列

公式会崩

不受影响

不受影响

多条件

需辅助列

直接支持

直接支持

兼容性

全版本

全版本

2021+/365

灵活程度

一般

最强

结论:全公司都用365就学XLOOKUP;需要和不同版本协作,INDEX+MATCH依然最稳妥。

八、写在最后

说实话,INDEX+MATCH确实比VLOOKUP多了一步,初学的时候可能觉得有点绕。但等你真正用熟了就会发现,它的逻辑其实更直观:先定位,再取值,就像你在表格里用眼睛找人一样自然。

而且这个组合的上限非常高。今天讲的5个案例只是冰山一角,INDEX+MATCH还能和SUM、AVERAGE、IF等函数嵌套,玩出更多花样。比如INDEX+MATCH+SUM可以实现多列条件求和,INDEX+MATCH+IF可以做动态判断,学会了组合思路,很多复杂问题迎刃而解。

Excel函数学到后面你会发现,单个函数的威力是有限的,真正的高手都是组合拳。INDEX+MATCH就是你练组合拳的第一步。学会了它,走到哪都能用。

🔥 关注「效率小本本」,每天一个Excel小技巧,少加班!

觉得有用就点个赞+在看吧 💪

作者:沈未迟
来源说明:本文首发于微信公众号「效率小本本」,经整理优化后发布于 DevToolHub。

沈未迟 · 独立开发者
DevToolHub 站长,专注于在线工具开发与效率提升。联系邮箱:[email protected]