大家都知道VLOOKUP常规方式只能从左往右查找,如果结果在查询条件的左边,就要通过IF {1,0}来构建数组,很多人都不能理解这种用法。
今天我给大家介绍一个组合函数,学会了可以轻松查找任何方向查找的问题。那就是INDEX MATCH组合。
首先我们来看看INDEX函数怎么用,INDEX函数的常规使用方法如下:
=INDEX ( 区域, 区域的第几行, 区域的第几列 )
例:根据销售ID,查询此ID对应的销售人员和销售产品(我们假设销售ID是唯一的)
我们在单元格B11输入公式:=INDEX($A$2:$F$6,2,2)
公式解析:1、区域:是指整个数据源的所有范围(可以含标题),此处为:$A$2:$F$6
2、区域的第几行:10248ID在区域的第2行,A2-A3,记住,此处是区域的第2行,而不是实际的行号3;
3、区域的第几列:销售人在区域的第2列,即A-B;当区域只有1列的时候,这个参数可以省略。
这样,如果我们要查询ID对应的产品名称,将第三个参数2改成3即可,即:
=INDEX($A$2:$F$6,2,3)
但是,区域的第几行和第几列,显然我们提前是不知道的!!!这下,就该我们的MATCH函数出场了,语法规则如下:
=MATCH(查找条件,查找区域,查找精度)
例,查找ID10260在区域的第几行
第几行公式:=MATCH(A11,A2:A6,)
公式解析:查找条件:这个和VLOOKUP一样,是指你要查找的某个值所在的单元格;
查找区域:这个区域正常情况下,是指某列或者某行,此处是一列;注意的是,这个一列,一定要和INDEX的区域的条件列保持一致;如上个INDEX函数中,区域为$A$2:$F$6,那么我们在取列的时候,就选择列标:$A$2:$A$6;同理,如果查询行的时候,我们也要选择同范围内的第一行:$A$2:$F$2;
查找精度:这个同VLOOKUP的第四参数,也表示精确查找和模糊区域的意思,我们输入0或者FALSE或者直接逗号结束,都表示精确匹配。
这样,如果我们要查找标题所在的列,就用如下的公式:
第几列公式:=MATCH(A14,$A$2:$F$2,)
这下,有了MATCH的帮忙,我们再回过头来写第一个公式:
=INDEX($A$2:$F$6,MATCH($A15,$A$2:$A$6,),MATCH(B$14,$A$2:$F$2,))
大家仔细体会一下,虽然公式看起来有点长,但是很容易理解哟。
以上是基本用法,下面我们用这个来改写反向查找和多条件查找。
反向查询例:根据销售ID,查询此ID对应的销售人员
INDEX MATCH组合的多条件查找,来源于MATCH可以处理多条件查询位置,如下列:
公式:=INDEX(D2:D7,MATCH(A12&B12,C2:C7&B2:B7,))
公式解析:这是一个数组函数,结束的时候,需要按CTRL SHIFT ENTER三键结束,在这里唯一要注意的地方就是,几个条件查找,就将查找条件和查找区域进行连接就行了,不需要用IF进行构建。
联系客服