Vlookup的升级版Xlookup函数已经跟大家介绍过了,今天跟大家分享下Index+Match的升级版,主要就是Match函数的升级,作用与Xlookup相似,但是XMatch却更加的灵活一些,有需要的粉丝可以看下~
一、了解XMATCH
Xmatch:查找数据在表格区域的项目位置
语法:=XMATCH (lookup_value、lookup_array、[match_mode]、[search_mode])
第一参数:查找值
第二参数:查找的数据区域
第二参数:匹配类型,它是一个可选参数,一共有四个匹配类型
0:精确匹配(默认,省略第三参数则默认设置为0)
-1:完全匹配或下一个最小项
1:完全匹配获下一个最大项
2:通配符匹配
第四参数:搜索类型,它也是一个可选参数,有四个搜索类型
1 :正序搜索, (默认,省略第三参数则默认设置为1)
-1 :搜索倒序搜索 。
2 :依赖于lookup_array按升序排序的二进制搜索
-2 :依赖于 lookup_array 按降序排序的二进制搜索
如下图,我们想要在表格中查找【张飞】在姓名的位置,就可以使用XMATCH函数
公式:=XMATCH(F3,A2:A9,0)
结果为3,就表示张飞在姓名这一列的第三个位置
XMATCH函数的作用就是查找数据的位置,它需要搭配INDEX函数才能实现数据查询,下面我们就来了解下都有哪些操作吧!
一、常规查找
在这里我们想要查找【武则天的数学成绩】,公式为
=INDEX(D1:D9,XMATCH(G4,A1:A9,0))
二、多条件查找
有2个或者2个以上的查找,我就称之为多条件查询,一般都是为了解决查找值重复的问题
如下图,鲁班有重名,而现实我们需要查找【2班鲁班】的数据成绩,公式为
=INDEX(E1:E9,XMATCH(G3&H3,A1:A9&B1:B9,0))
操作与常规查找类似,只需使用连接符号在Xmatch中将班级与姓名连接在一起即可
三、反向查找
反向查找是Vlookup的专属名词,因为Vlookup找不到查找值左侧的数据,如果想要找到查找值左侧的数据,我就称之为反向查询,但是对于INDEX+XMTACH是不存在反向查询这一说的,它们左右都是可以查询的,就是函数的常规用法
如下图,我们根据学号,可以使用函数轻松的查找姓名
=INDEX(A1:A9,XMATCH(G4,B1:B9,0))
四、关键字查询
所谓的关键字查询,就是我们可以通过输入关键字来查找数据,不过需要借助通配符,常用的有2个
?:表示任意单个字符
*:表示任意多个字符
其实就是INDEX+XMTACH,我们在查找值中设置通配符来取代实际的数字即可,在这里我们是直接输入在单元格的,使用连接符号连接也是可以的
=INDEX(D1:D9,XMATCH(G2,A1:A9,2))
五、查找多列数据
我们可以使用设置一次公式,快速查找多行多列的数据,在这里我们需要使用2个Xmatch函数来确定数据的行列标号,跟常用用法相似,只不新增一个Xmatch函数用于确定行标号
=INDEX($A$1:$G$10,XMATCH($I2,$A$1:$A$10,0),XMATCH(J$1,$A$1:$G$1,0))即可
六、区间查找
INDEX+XMATCH也可以进行区间查找,操作与Xlookup函数类似,也需要先构建一个数据区域,取区间的最小值来对应等级,下图橙色区域就是我们构建的区域
=INDEX($F$8:$F$11,XMATCH(B2,$E$8:$E$11,-1))
主要是利用XMATCH的第三参数,如果函数找不到精确的结果,就会返回小于查找值的最大值,原理与Vlookup函数的近似匹配一致
七、查找最后出现的数据
在这里我们利用的XMATCH的倒序查询,一般函数都是从下到下进行数据查询的,但是XMATCH却可以从下往上查询
如下图,我们需要在操作时间中找到鲁班最后一次操作时间
=INDEX(B1:B25,XMATCH(D2,A1:A25,0,-1))
关键就是将XMATCH的第四参数设置为了-1,让XMATCH从下往上进行数据查询,因为这个时间是从小到大排列的。
以上就是今天分享的7个关于INDEX+XMATCH函数的常见用法,他们的作用远不止于此,以后会跟大家分享他们更多的使用技巧
领取专属 10元无门槛券
私享最新 技术干货