Excel数据查询之INDEX和MATCH函数
-
INDEX 函数的作用
INDEX(单元格区域,指定的行数,指定的列数)
INDEX函数用于在一个区域中,根据指定的行、列号来返回内容
=INDEX(A1:D4,3,4)
返回A1:D4单元格区域第3行和第4列交叉处的单元格,即D3单元格
-
MATCH函数的作用
MATCH 函数用于在一行或一列的查询区域中搜索指定内容,然后返回该内容在查询区域中的相对位置
常用写法是:
MATCH(要找谁,要查询的一行或一列区域,匹配方式)
MATCH 函数有三个参数,第一个参数是查找对象,第二参数指定查找的范围,第三参数用于指定匹配方式,通常使用0,表示精确匹配。
MATCH(C3,A2:A10,0)
返回C3单元格的内容在A2:A10中所处的位置,结果为 7
这两个搭档的常见用法:
INDEX是根据位置返回内容 , MATCH是返回内容在一行或一列中的位置
要根据D3单元格中的姓名,在A~B列查询对应的职务
=INDEX(B:B,MATCH(D3,A:A,0))
- 先使用MATCH函数,查找D3单元格的“小龙女”在A列中所处的位置,得到结果为8。
- 然后使用INDEX函数,在B列中返回第8个元素的内容,结果就是小龙女对应的职务了。
逆向查询
要根据D3单元格中的职务,在A~B列查询对应的姓名
=INDEX(A:A,MATCH(D3,B:B,0))
先使用MATCH函数,查找D3单元格的“秘书”在B列中所处的位置,得到结果为5。然后使用INDEX函数,在A列中返回第5个元素的内容,结果就是秘书对应的姓名了
多条件查询
需要根据E列和F列的职务和年龄信息,在A~C列单元格区域中,查找职务为“秘书”,年龄为“19”岁所对应的姓名
=INDEX(A:A,MATCH(E3&F3,B:B&C:C,0))
注意这里是一个数组公式,输入完成后需要将光标放到编辑框中,按住Shift+ctrl不放,再按回车完成
先使用连接符&,将E3和F3的职务年龄合并成一个新的条件。
再使用连接符将B列和C列的信息合并成一个新的查询区域。
然后使用MATCH函数,查询出职务&年龄在查询区域中所处的位置8。
最后用INDEX函数,得到A列第8个元素的内容,最终完成两个条件的数据查询。