二维码 购物车
部落窝在线教育欢迎您!

MATCH:函数哲学家,找巨人做伴。新出道必学!

 

作者:壹仟伍佰万、小雅来源:部落窝教育发布时间:2019-01-30 21:54:44点击:8706

分享到:
0
收藏    收藏人气:2人
版权说明: 原创作品,禁止转载。
编按:

今天是函数课堂第2课,学习MATCH函数。MATCH函数新人必学,为什么?一个是因为大名鼎鼎的VLOOKUP+MATCH是工作中的常客,另一个是因为MATCH的人生哲学“自己弱那就找个巨人做伙伴”值得借鉴!

 

 

上期给大家介绍了Excel三大家族之一的逻辑家族族长——IF函数。今天我们来聊一聊另外一个家族——查找家族!说起查找家族,相信大家首先想到的就是VLOOKUP函数。这位大哥打拼沙场多年,早已名扬万里!相信接触过Excel的小伙伴都多少略有耳闻。然而今天我们要说的是它身边得力小弟——MATCH函数!

 

这个小弟呀,虽然单拎出来能力不咋的,但是跟着大哥组队,那效果可是杠杠的!

 


 

我们先来认识认识他吧

 

一、MATCH是谁?

 

MATCH是查找定位函数,它返回的并不是数据本身,而是该数据在单列或单行中的位置。类似于排队报数,站在第几个,MATCH就报几号!(注意:它只支持单列或单行数据查找哦~

 

函数结构:MATCH(找啥,在哪儿找[单行或单列],查找类型)

 

查找类型:3种。分别用01-1代表。0表示精确查找,1表示升序查找,-1表示降序查找。

 

二、MATCH基本用法

 

1.精确查找

 

举个栗子

我们想知道“张三”在姓名这列区域排第几位。

 

 

公式:

=MATCH(B3,B$2:B$8,0)

     

 

公式解析:

找啥:找“张三”,所以是B3单元格

在哪儿找:在姓名列B2:B8中找。为了防止向下填充公式姓名列区域变动,需要用$将它固定住,即B$2:B$8

查找类型:0表示精确查找。精确查找不需要排序。

 

2.升序查找

 

升序查找就是查找小于等于查找值的最大值然后返回其所在位置。要求数据必须升序排列。

同样举个栗子

我们想知道不大于60的有几个。

 

 

首先对成绩按升序进行排列。

 

 

然后在D3中输入公式:=MATCH(60,B20:B40,1)

 

 

确定后就得到了人数8人。很显然升序排列后,返回的是小于等于60的最后一个数值的位置数;也可以理解为统计了凡是不大于60的包括所有等于60的数值的个数。

 

3.降序查找

 

降序查找就是查找大于等于查找值的最小值然后返回其所在位置。要求必须降序排列。

同样举个栗子

我们想知道不小于60的有几个。接着上面的,首先降序排列数据。

 

 

 

然后在E3中输入公式:=MATCH(60,B20:B40,-1)

 

 

确定后得到不小于60的有14人。

得到两个很显然的结果:

1)降序后,升序查找就出错了。所以升序查找就必须升序排列;反过来,降序查找就必须降序排列

2)降序查找,返回的是大于60中的最小数或者第一个等于60的数的位置数;也可以理解为统计了所有大于60的包括第一个等于60的数值的个数。这一点与升序筛选不同:如果存在与查找值相同的数值,升序定位到等于查找值的最后一个数值,而降序定位到等于查找值的第一个数值。

 

 

明白了MATCH是谁和基本用法,估计大家都会认为MATCH有点鸡肋:就用来返回位置数,跟我想要查找具体的值相差很远呀。

正因为这样,日常工作中MATCH函数单独出场几乎么有。MATCH并不气馁,为了赢得自己在函数界的一席之地,它采用了一项有效策略——同巨人结伴共舞!因此有了大名鼎鼎的VLOOKUP+MATCH组合、INDEX+MATCH组合。

 

三、与巨人共舞

 

1. VLOOKUP+MATCH组合

 

下面是一张成绩明细表,我们需要找到“元菁米、王慧、廉枫、余迈”这几个人的总分、平均分和等级。

 

 

如果单用VLOOKUP函数,我们需要频繁的修改第三参数。当查总分的时候,在P2单元格输入公式:

=VLOOKUP(O2,A2:M142,11,0)

而要查平均分的时候,就需要修改第三参数为12,公式变为:

=VLOOKUP(O2,A2:M142,12,0)

如此使用很麻烦,那怎么能省事呢?

MACTH抓紧机会向VLOOKUP推荐了自己,用自己查询“总分”“平均分”“等级”在A1:M1行中的位置数取代第三参数,就可以不需要手动修改。这时查找总分的公式就变成:

=VLOOKUP($O2,$A$2:$M$142,MATCH(P$1,$A$1:$M$1,0),0)

然后右拉填充再下拉填充公式就完成了查询。如下:

 

 

可能有伙伴看到过我们前面的文章《会用Column吗?它让公式不那么笨。》,说用COLUMU取代第三参数更简单:

=VLOOKUP($O2,$A$2:$M$142,COLUMN(K1),0)

 

 

说得没错,当前查询值连续排列的,并且排列顺序与成绩明细排列一致,用COLUMN更简单。如果是按下面的两个表查询呢?

 

   

 

很显然COLUMN就不适合了,但MATCH完全胜任。

 

 

2. INDEX+MATCH组合

 

还是查成绩,如下:

 

 

我们单用INDEX查询成绩的话,何丛良的数学成绩查询公式:=INDEX(A2:D9,5,2),物理成绩查询公式:= INDEX(A2:D9,5,4)

INDEX查询就是以指定的查询区域为坐标系,通过行坐标和列坐标查询所需数值。何丛良成绩的查询区域是A2:D9,数学成绩位于第5行和第2列的交叉点上,所以公式就是INDEX(A2:D9,5,2)。物理成绩位于第5行第4列的交叉点上,所以公式是INDEX(A2:D9,5,4)

通过这样输入行数、列数的方式查询太笨拙,不实用。因此MATCH又见缝插针地向INDEX推荐了自己。MATCH可以根据条件查出定位值,取代人工输入行数、列数。成绩查询公式变成:

=INDEX($A$2:$D$9,MATCH($F3,$A$2:$A$9,0),MATCH(G$2,$A$2:$D$2,0))

 

 

当然这里也可以用VLOOKUP+MATCH组合,公式:

=VLOOKUP($F3,$A$2:$D$9,MATCH(G$2,$A$2:$D$2,0),0)

VLOOKUP+MATCH组合与INDEX+MATCH组合有何区别呢?这个问题在后续的函数课堂中我们将谈到。有兴趣的伙伴可以自己先琢磨琢磨。

怎么样,大哥和小弟的组合是不是很棒呢?所以说MATCH函数不愧为函数中的哲学家!今天的函数课就到此为止,我们下期再见。

 

 

本文配套的练习课件请加入QQ群:264539405下载。

Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和《Excel极速贯通班》直播课全心为你!

扫下方二维码关注公众号,可随时随地学习Excel

http://www.itblw.com/ewebeditor/uploadfile/20180914164059384001.png

相关推荐:

部落窝函数课堂1《IF函数:剥洋葱》

IF函数与CHOOSE函数的区别 Excel大擂台:CHOOSE函数巅峰对决IF函数,你投谁的票

VLOOKUP函数应用实例Vlookup快速核对人员的薪资变动

让公式更灵活的COLUMN函数《会用Column吗? 它让公式不那么笨》