上一篇文章,《Excel函数篇INDEX函数》说到了INDEX与MATCH函数的组合运用,今天就单独讲一下MATCH函数

一、认识MATCH函数

excel match函数匹配(Excel函数篇-MATCH函数)(1)

二、MATCH函数的常规运用。

1:逆向查询。

由于实际应用中,只要求返回位置的问题不多,好像MATCH函数一时派不上用场了。

其实这个函数更多的时候,是与其他引用类函数组合应用,最典型的使用是与INDEX函数组合,能够完成类似VLOOKUP函数和HLOOKUP函数的查找功能,并且可以实现逆向查询,即从左向右或是从下向上查询。

如下图所示,需要根据E列的姓名在A列查询对应的部门。

excel match函数匹配(Excel函数篇-MATCH函数)(2)

在D2单元格输入一下公式,返回查询结果为"物流中心"。

=INDEX(A2:A14,MATCH(E2,B2:B14,0))

excel match函数匹配(Excel函数篇-MATCH函数)(3)

MATCH(E2,B2:B14,0),第三个参数0,标识是精确查找,即精确匹配E2单元格"橘右京"在B列的位置,结果为5.

计算结果作为INDEX函数的参数,在A列中,返回对应的值。

使用INDEX函数和MATCH函数的组合应用来查询数据,公式看似相对复杂一些,但在实际应用中,更加灵活多变。

2:查找首先出现的位置

除了使用特定的值作为查询参数,也可以用逻辑值进行查询。

以下图为例,是某公司的销售数据,需要查询首次超过平均销售额的月份。

excel match函数匹配(Excel函数篇-MATCH函数)(4)

在D2单元格内,输入公式:

=INDEX(A2:A13,MATCH(TRUE,B2:B13>AVERAGE(B2:B13),0))

由于是数组公式,需要按Shift Ctrl Enter>组合键。

来看看公式的意思:

:AVERAGE(B2:B13),用来计算B2:B13单元格的平均值。

excel match函数匹配(Excel函数篇-MATCH函数)(5)

:B2:B13>AVERAGE(B2:B13)部分,是用B2:B13的平均值,分别做比较,得到由逻辑值TRUE或FALSE组成的数组。

excel match函数匹配(Excel函数篇-MATCH函数)(6)

c:MATCH函数,第一参数使用逻辑值TRUE,使用精确匹配方式查询TRUE在数组中第一次出现的位置,结果为6.

d:MATCH函数的计算结果,用作与INDEX函数的参数,INDEX函数在根据指定的行列返回A列中对应的月份。

3:查找最后一次出现的位置

除了查询首次出现的位置,MATCH函数还可以查询最后一次出现的位置。

以下图为例,需要查询最后次超过平均销售额的月份。

excel match函数匹配(Excel函数篇-MATCH函数)(7)

D6单元格使用以下数组公式,按Shift Ctrl Enter>组合键。

=INDEX(A2:A13,MATCH(2,1*(B2:B13>AVERAGE(B2:B13))))

来看看公式的意思:

1、先使用AVERAGE函数计算出B2:B13单元格的平均值。

2、再用B2:B13与平均值分别作比较,得到由逻辑值TURE或是FALSE组成的内存数组。用1相乘,返回以下结果:

excel match函数匹配(Excel函数篇-MATCH函数)(8)

3、MATCH函数以2作为查找值,在这个数组中查找小于或等于2的最大值。

MATCH函数在处理时,只要将第三参数设置为1或者省略,就会默认第二参数是已经按升序排列过的数据,所以会返回最后一个小于或等于2的最大值(也就是1)的位置。

4、最后使用INDEX函数,根据MATCH函数指定的行号返回A列中对应的月份。

欢迎分享及转载文章。

私信 1217 可以获取VBA FOR WPS的安装程序

私信 数据 可以获取SQL代码的Excel文件

私信 视频 可以获取80集VBA入门视频

,