EXCEL中如何使用MATCH函数从列表中查询数据
来源:网络收集 点击: 时间:2024-03-06MATCH函数是返回查找值在列表中的次序,此函数有三个参数,第一个参数是查找值,第二个参数是查找区域,第三个参数是查找类型。

第三参数,有三个不同的参数,1和-1是模糊查找,0是精确查找,参数为1时,必须按升序排序,参数为-1时,必须按降序排序,使用MATCH函数进行模糊查找的用得不多,绝大多数情况使用精确查找,进行精确定位,下面介绍的均指精确查找。

MATCH函数返回的是查找值在列表中的次序,查找区域必须是单行或单列,如果区域引用的是整行或整列,并且区域中没有相同值,则返回的次序与行号或列号相同:=MATCH(F3,A:A,0)。

而如果引用的不是从第一行、列开始的局部区域,则返回的次序与行、列号是不同的,这点在与其它函数组合返回数据时一定要注意,如:=MATCH(F3,A2:A19,0),查找区域是从第2行开始的,且区域中的值具有唯一性,则返回次序比行号小1。

MATCH函数支持使用通配符,当查找值只需要部分特征时,可以使用通配符进行匹配:=MATCH(郑*,A2:A19,0)。

现在要从列表中查询指定姓名、指定科目的分数,使用单一的函数就不能返回数据,可以使用MATCH函数与其它函数进行组合查询,与此匹配的函数有OFFSET、VLOOKUP(HLOOKUP)、INDEX函数几种。
7/12与OFFSET函数组合,使用MATCH函数返回的结果作为OFFSET的行偏移量和列偏移量,将参照点偏移到指定位置,从而返回查询数据:=OFFSET(A1,MATCH(F3,A2:A19,0),MATCH(G2,B1:D1,0)),关于OFFSET函数的用法,可参看:“EXCEL中OFFSET函数的实用技巧”。

与VLOOKUP函数组合,使用MATCH函数的结果作为VLOOKUP函数要返回列数参数,从而返回查询数据:=VLOOKUP(F3,A:D,MATCH(G2,A1:D1,0),0),这里的MATCH函数列表的起始位置一定要和VLOOKUP区域的起始位置相同,关于VLOOKUP函数的用法,可参看:“EXCEL中VLOOKUP函数的使用”,这里不再赘述。

与之相对应的,也可以使用HLOOKUP函数,此时,就要用MATCH函数返回行的位置:=HLOOKUP(G2,1:19,MATCH(F3,A1:A19,0),0),其它各个参数的引用也发生了变化。

INDEX函数是返回区域中行列交叉点的数据,需要用MATCH函数同时返回行的位置、列的位置作为其参数:=INDEX(A1:D19,MATCH(F3,A1:A19,0),MATCH(G2,A1:D1,0))。

使用INDEX函数时,一定要注意,如果不是整行整列引用,MATCH函数的区域起始位置必须与INDEX的起始位置相同,才能返回正确的数据:=INDEX(B2:D19,MATCH(F3,A2:A19,0),MATCH(G2,B1:D1,0))。

当区域中有多个符合条件的查找值时,MATCH函数总是返回第一个查找值所在位置,利用此特性,可以“使用公式从重复项中提取出唯一值”。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_259207.html