VLOOKUP查不到反方向?MATCH+INDIRECT+INDEX,三个函数配合就能反向查找



Lv.3 优质创作者
前几天有老师问我一个问题:表格里员工号在左边、姓名在右边,现在手里只有姓名,想查工号,VLOOKUP写了半天就是查不出来。
其实不是公式写错,是方向不对。VLOOKUP天生只能「往右看」。
今天就把反向查找讲清楚,一共三件事:先说清什么叫反向查找,再用 MATCH + INDIRECT 做一遍,最后换成 INDEX + MATCH,公式更短、也更好维护。
一、先分清:正向查找和反向查找
下面这张表,A列员工号、B列员工姓名、C列职务,数据一共9条。
所谓正向查找,是指查找用的那一列在左边,要取的结果列在右边。比如用姓名查职务:姓名在B列,职务在C列,B在左、C在右,VLOOKUP第三个参数写个2,往右数第二列就是职务,很顺。
反向查找正好反过来:要查的姓名在B列,要取的员工号在A列,结果落在查找列的左边了。
而 VLOOKUP 第三个参数只能往右数,数不到左边去。所以这类问题,得换个思路:把「找」和「取」拆成两件事,分别交给合适的函数。
二、第一步:用 MATCH 找出「在第几行」
MATCH 顾名思义就是匹配,它只负责找位置,不负责任把东西取回来。
在员工号这一列(F2)里输入:
=MATCH(E2,B:B,0)
它有三个参数:第一个是要查找的值,这里写 E2,也就是要找的那个姓名;第二个是查找的区域,这里选 B 列;第三个是匹配类型,0 表示精确匹配。
回车,结果是 3。意思很直白:「久久」这个名字在B列的第3行。
注意这一步的定位——MATCH 只给出了一个行号,A102 并没有回来。这和 VLOOKUP 完全不一样,VLOOKUP 是「找」和「取」一起干的。
三、第二步:用 INDIRECT 把「a3」变成真正的引用
既然已经知道在第3行,要取的是A列,那目标单元格不就是 A3 吗?
先做拼接,把列字母和行号连起来:
="a"&MATCH(E2,B:B,0)
结果得到 a3。但这时候它只是四个字符的文本,Excel 不会把它当成单元格。
INDIRECT 的作用就在这儿:你给它一个有意义的字符串,它帮你把那个字符串对应的单元格里的内容引过来。所以外面再套一层:
=INDIRECT("a"&MATCH(E2,B:B,0))
回车,A107 就出来了。把E2换成别的姓名,结果跟着变,反查这条路就走通了。
一个细节:公式里我用的是小写 a,因为 Excel 不区分大小写,写 "A" 效果一样,看着习惯哪个就用哪个。
四、换个更顺手的:INDEX + MATCH
INDIRECT 这条路能走通,但每次都要拼字符串,列字母写错一个就全错。还有个更省事的写法,用到 INDEX。
INDEX 的思路是:给它一片区域,再告诉它第几行,它就把那一行取回来。比如:
=INDEX(B:B,3)
意思是在B列里取第3个,结果是「久久」,和我们刚才算出来的行号正好对得上。
既然INDEX吃的是「区域 + 行号」,而行号MATCH能算出来,那就把MATCH塞进INDEX的第二个参数里,字符串都不用拼了:
=INDEX(A:A,MATCH(E2,B:B,0))
读一遍就是:在A列里,取第「MATCH算出来的」那一行。一层套一层,直接出结果。
五、两种写法怎么选
两种写法都是「先找位置,再取内容」,区别只在于取的方式:一个拼地址再引用,一个按行号直接取。
写法 | 优点 | 要注意 |
MATCH + INDIRECT | 能顺带把「引用」想明白 | 要拼字符串,列字母写错就全错 |
INDEX + MATCH | 公式短,改列只改区域 | 要理解「区域 + 行号」的关系 |
我个人的习惯是日常用 INDEX + MATCH,尤其表格列偶尔要调整的时候,只改区域不用改字符串,省心。
六、公式汇总
1. 找位置(返回行号)
=MATCH(E2,B:B,0)
2. 拼出单元格地址文本
="a"&MATCH(E2,B:B,0)
3. 间接引用(MATCH + INDIRECT)
=INDIRECT("a"&MATCH(E2,B:B,0))
4. 单独用 INDEX 取指定行
=INDEX(B:B,3)
5. 反向查找(INDEX + MATCH)
=INDEX(A:A,MATCH(E2,B:B,0))
两句题外话
第一句,VLOOKUP 太能干了,「找」和「取」两件事都做,难免有些细节照顾不到,分工来完成一些事,反而是更好的选择。这话我觉得挺有道理,一个函数只干一件事,组合起来反而灵活。
第二句,MATCH、INDEX、INDIRECT 这三个都是老函数,WPS 和 Office 各版本基本都有,不用担心版本问题。反过来,新版里已经有 XLOOKUP,一个函数就能直接反向查,属于更省事的进阶路子——不过先把 MATCH + INDEX 这套弄明白,再看 XLOOKUP 会清楚很多。
我是墨云轩,热衷分享办公小技巧,边学习,边分享,每天进步一点点!
Lv.3 优质创作者
Lv.3 优质创作者