Excel公式 | INDEX和MATCH实现逆向查找

今天学Excel,记录了两个函数。

MATCH是Excel中的一个匹配函数,可以返回指定数值在指定数组区域中的位置。

具体用法如下:

MATCH(lookup_value, lookup_array, match_type)

lookup_value:需要查找的值。

lookup_array:要查找的区域,必须是某一行,某一列或某个一维数组。

match_type:查询的指定方式,用数字0、1、-1表示,分别是精确匹配、升序查找、降序查找模式。

下面我们简单举几个例子来简单介绍一下。

例1:=MATCH(3,{1,5,7,3,9},0)=4match_type为0,即精确查找,在{1,5,7,3,9}中“3”第一次出现的位置为4,所以返回4。

例2:=MATCH(4,{1,3,5,7,9},1)=2match_type为1,即升序查找,要求第2个参数的数组按升序排列,在{9,7,5,3,1}查找出小于或等于4的最大值(即数组中的3)在第2个元素位置,所以返回2。

例3:=MATCH(6,{9,7,5,3,1},-1)=2match_type为-1,即降序查找,要求第2个参数的数组按降序排列,在{9,7,5,3,1}查找出大于或等于6的最小值(即数组中的7)在第2个元素位置,所以返回2。

MATCH的用法大概是这么多,单独使用并不是特别实用,一般会与其他函数组合使用,比如INDEX。

INDEX

INDEX函数是返回表或区域中的值或对值的引用,有数组形式和引用形式两种。数组形式通常返回数值或数值数组;引用形式通常返回引用。

在逆向查找中我们主要利用前一种,所以在这里简单介绍下。

INDEX(array,row_num,column_num)

array为单元格区域或数组常数,也就是返回值所在区域。

row_num为行号,如果区域为某行,行号可省略。

column_num为列号,如果区域为某列,列号可省略。

举个例子

逆向查找。

假设我们现在有两列数据,第一列是电影名称,第二列是演员姓名,现在任意给出一个演员姓名,希望能匹配出其主演的电影。当然,在可以破坏表结构的情况下,可以互换两列位置利用VLOOKUP解决,今天我们主要介绍如何在不破坏表结构的情况下利用INDEX和MATCH进行逆向查找。

这个例子相对简单,希望大家可以在实际应用中不断尝试更多的用法。

本文来自网络,本文观点不代表CMCC立场,转载请联系原作者。

发表评论

邮箱地址不会被公开。 必填项已用*标注