养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

INDEX函数与MATCH函数逆向查询

时间:2024-09-23 12:32:24

由于实际应用中,只要求返回位置的问题不多,好像MATCH函数一时派不上用场了。其实这个函数更多的时候,是与其他引用类函数组合应用,最典型的使用是与INDEX函数组合,能够完成类似VLOOKUP函数和HLOOKUP函数的查找功能,并且可以实现逆向查询,即从左向右或是从下向上查询。

工具/原料

电脑

EXCEL

方法/步骤

1、对于这种逆向查询的数据可以使用LOOKUP函数,今天再说说用INDEX+MATCH函数实现的方法。如下图所示,需要根据E列的姓名在A列查询对应的部门。

INDEX函数与MATCH函数逆向查询

2、 以前咱们说过,对于这种逆向查询的数据可以使用LOOKUP函数,今天再说说用INDEX+MATCH函数实现的方法。  D2单元格输入以下公式:  =INDEX(A:A,MATCH(E2,B:B,))  返回查询结果为采购部。

INDEX函数与MATCH函数逆向查询

3、INDEX函数是常用的引用类函数之一,可以在一个区域引用或数组范围中,根据指定的行号和列号来返回一个值。MATCH(E2,B:B,)部分,第三参数简写,表示使用0,即精确匹配方式查询E2单元格姓名“小美”在B列的位置,结果为4。计算结果用作INDEX函数的参数,INDEX函数再根据指定的行号返回A列中对应的值。  使用INDEX函数和MATCH函数的组合应用来查询数据,公式看似相对复杂一些,但在实际应用中,更加灵活多变。

4、查找首次出现的位置除了使用特定的值作为查询参数,也可以使用逻辑值进行查询。以下图为例,是某公司的销售数据。需要查询首次超过平均销售额的月份。

INDEX函数与MATCH函数逆向查询

5、D2单元格使用以下数组公式,记得要按<挢旗扦渌;shift+ctrl+enter>组合键:  =INDEX(A2:A1泌驾台佐3,MATCH(TRUE,B2:B13>AVERAGE(B2:B13),))  来看看公式的意思:  AVERAGE(B2:B13)部分,用来计算出B2:B13单元格的平均值895.33。  B2:B13>AVERAGE(B2:B13)部分,用B2:B13与平均值分别作比较,得到由逻辑值TRUE或是FALSE组成的内存数组:  {FALSE;FALSE;FALSE;TRUE;…;TRUE}  MATCH函数第一参数使用逻辑值TRUE,使用精确匹配方式查询TRUE在数组中第一次出现的位置,结果为4。本例中的第一参数也可以写成“1=1”,1=1返回逻辑值TRUE,与直接使用TRUE效果相同。  MATCH函数的计算结果用作INDEX函数的参数,INDEX函数再根据指定的行号返回A列中对应的月份。  查找最后一次出现的位置  除了查询首次出现的位置,MATCH函数还可以查询最后一次出现的位置。以下图为例,需要查询最后次超过平均销售额的月份。

6、查找最后一次出现的位置  除了查询首次出现的位置,MATCH函数还可以查询最后一次出现的位置。以下图为例,需要查询最后次超过平均销售额的月份。

INDEX函数与MATCH函数逆向查询

7、D2单元格使用以下数组公式,按<sh坡纠课柩ift+ctrl+enter>组合键:=INDEX(A2:A13荑樊综鲶,MATCH(1,0/(B2:B13>AVERAGE(B2:B13))))来看看公式的意思:  先使用AVERAGE函数计算出B2:B13单元格的平均值。  再用B2:B13与平均值分别作比较,得到由逻辑值TRUE或是FALSE组成的内存数组。  用0除以这个内存数组,返回以下结果:  {#DIV/0!;#DIV/0!;0;0;0;…;#DIV/0!}  MATCH函数以1作为查找值,在这个数组中查找小于或等于1的最大值在开始部分的例2中咱们说过,MATCH函数第三参数使用1或是省略时,要求第2个参数的数组按升序排列。但在这个数组中,实际是由很多个0和错误值#DIV/0!组成的,并不是升序排列。MATCH函数在处理时,只要将第三参数设置为1或是省略,就会默认第二参数是已经按升序排列过的数据,所以会返回最后一个小于或等于1的最大值(也就是0)的位置。  最后使用INDEX函数,根据MATCH函数指定的行号返回A列中对应的月份。

方法/步骤2

1、index函数基础用法和实例应用第一:index函数用法解释  INDEX函数的用法是返回列表或数组中的元素值,此元素由行序号和列序号的索引值确定。即行列交叉点所在的引用。  INDEX函数的语法为:INDEX(区域,行,列)  需要注意一点的是:此处的行列序号是相对于第一参数的区域而言,不是Excel工作表中的行或列序号。  如果区域只包含一行或一列,则相对应的参数row_num或column_num可以相应省略1个。

2、第二:index函数简单举例应用  如下表所示,根据A1:D5单元格区域,使用index函数查找A8单元格对应的产品名称。

INDEX函数与MATCH函数逆向查询

3、提供三种解法,任意一种均可。  一佼沣族昀:=INDEX(A4:D4,1,4)  二:=INDEX(A4:D4,,4)  三:=INDEX(A1:D5,4,4像粜杵泳)  解法一,在A4:D4一行中,查找第一行,第四列的值。  解法二,根据第一部分index函数解释,如果区域只包含一行,则对应的行参数可以省略,因此省略后就成为:=INDEX(A4:D4,,4)。  解法三:在A1:D5区域,查找第四行,第四列的值。  本文只是index函数的一个基础用法,更进阶的用法,请参考:INDEX和MATCH函数应用

© 一点知识