原文标题:《再见 VLOOKUP!这组 CP 函数才是查找之王!》
Hi~ 大家好,我是爱学 Excel 的田田~
又到了每周准时开课的【0 基础学 Excel 函数】时间啦~
在前几期的学习中,我们已经认识了 match 函数和 index 函数的基本用法。
match 函数可以根据对象找位置,而 index 函数可以根据位置找对象,所以他们俩是相辅相成的关系,因此通常会把这两个函数放在一起使用。
今天我们就来学习 index + match 函数的用法~
1、Index +match 函数
我们来看这个案例:现在要根据行列标题中的考生姓名和学科,在成绩表中查找对应的分数。
首先,我们要先把姓名和学科在成绩表中对应的位置找出来。这里要就用到 match 函数。
❶ 在【A15】单元格中输入 = MATCH,按【 Tab 键】快速插入函数及括号「 ( 」。
现在我们要找孔娟,选择【B15】单元格;在成绩表的姓名列中去找,因此选中【A2:A7】单元格。
查找结果要精确,所以第三个参数输入数字「0」,打上反括号「)」。
不要忘了将第二个参数绝对引用起来,选中第二个参数【A2:A7】,按下 F4 键快速锁定。公式输入完毕后按下回车键,向下填充公式,这些姓名在成绩表中对应的行数就都被查询出来了。
公式如下:
=MATCH(B15,$A$2:$A$7,0)
❷ 接下来,我们按照刚才的方法,把学科在成绩表中对应的位置页找出来。
在【C13】单元格中输入 = MATCH,打上「(」括号,第一个参数选择数学【C14】单元格,第二个参数选择成绩表的学科行【B1:G1】单元格。
❸ 第三个参数输入数字「0「表示精确查找,输入反括号」)「,使用【F4】键锁定【B1:G1】,按下回车键,向右填充公式,这些学科在成绩表中对应的列数,也被查询出来了。
公式如下:
=MATCH(C14,$B$1:$G$1,0)
我们已经把姓名和学科对应的行号和列号找出来了,现在我们要根据这些找到的行号和列号,快速查出他们对应的分数,这里就可以用 index 函数来完成了。
❶ 在【C15】单元格中输入 = INDEX,第一个参数是查找的范围,我们选中整个分数区域【B2:G7】单元格。
❷ 第二个参数是查找的行【A15】单元格,第三个参数是查找的列数,选中【C13】单元格,打上反括号,按下回车键,孔娟的数学成绩,就被我们查询出来了。
❸ 接下来准备填充公式,注意,填充公式的时候要考虑相对引用和绝对引用的问题。
这时你要在脑海里想象一下接下来的画面:这个公式一共引用了三个单元格区域,当我们向右填充时,只有代表列的第三个参数可以跟着移动,当我们向下填充时,只有代表行的第二个参数可以跟着移动,而代表区域的第一个参数始终都是固定不变的。
❹ 因此我们尝试修改这个公式,双击公式单元格进入公式编辑模式。
第一个参数,我们使用 F4 键快速锁定。
第二个参数我们直接【A15】【C13】前面加上美元符号「$」,锁定他们的列。
第三个参数我们直接在【13】前面加上美元符号,锁定他们的行「$」。修改完毕后,向右填充公式,再向下填充公式,结果就都被查询出来了。
公式如下:
=INDEX($B$2:$G$7,$A15,C$13)
当然,如果你不想保留辅助数据,可以将 match 和 index 函数组合起来👇
完整公式如下:
=INDEX($B$2:$G$7,MATCH(B15,$A$2:$A$7,0),MATCH(C14,$B$1:$G$1,0))
多看多练才能学好 Excel~ 快去实操试试吧!
本文来自微信公众号:秋叶 Excel (ID:excel100),作者:田田
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。