查找函数中的定海神针——MATCH函数

 

E讯学堂你身边的Excel顾问长按,识别二维码,加关注在为数不多的查找引用函数中,MATCH函数最不起眼,因...



E讯学堂
你身边的Excel顾问


长按,识别二维码,加关注


在为数不多的查找引用函数中,MATCH函数最不起眼,因为它很少单独使用,更多的是跟其他函数联合使用。由于数据查找用得最多的是VLOOKUP函数,因此MATCH函数也就被遗忘在角落了。

但是,千万不要小瞧MATCH函数,在很多高效数据分析模板中,这个函数是不可或缺的重要函数之一,具有定海神针的作用!下面我们介绍几个MATCH函数应用的例子。

应用1:与VLOOKUP函数联合使用,不再费神费眼的去数数


利用MATCH自动匹配出要取数的列位置号,并把MATCH的结果作为VLOOKUP函数的第3个参数,即可实现更加灵活的查找。

例如,要从工资表中,把指定员工的各个工资项目查找出来,制作工资单,即可使用下面的公式(源数据和工资单结构如下图):

=VLOOKUP($C$2,'1月'!B:Q,MATCH(C4,'1月'!$B$1:$Q$1,0),0)


应用2:与INDEX函数联合使用,实现多条件查找

利用MATCH分别在行方向和列方向定位出两个条件值的位置,然后再使用INDEX把改行该列交叉单元格的数据取出来,这种查找更加灵活,应用更加广泛。

例如,下图中要查找指定地区、指定产品的数据,可以使用下面的公式:

=INDEX($C$3:$H$6,MATCH(B10,$B$3:$B$6,0),MATCH(C10,$C$2:$H$2,0))

当然,更简单的公式是联合使用MATCH函数和VLOOKUP函数,或者联合使用MATCH函数和HLOOKUP函数来解决,如下:

=VLOOKUP(B10,$B$3:$H$6,MATCH(C10,$B$2:$H$2,0),0)

=HLOOKUP(C10,$C$2:$H$6,MATCH(B10,$B$2:$B$6,0),0)



对于下面多个条件的查询,就只能联合使用MATCH函数和INDEX函数做数组公式了:

=INDEX($D$3:$I$10,MATCH(B15&C15,$B$3:$B$10&$C$3:$C$10,0),MATCH(D15,$D$2:$I$2,0))

说明:由于此例中查找的结果是数字,也可以使用SUM函数做数组公式(如果查找结果是文字,就只能使用查找函数做数组公式了):

=SUM(($B$3:$B$10=B15)*($C$3:$C$10=C15)*($D$2:$I$2=D15)*$D$3:$I$10)



对于如下表格,要取出每个产品的成本总额,这样的查找问题,就只能使用MATCH函数和INDEX函数了:

=INDEX(G:G,MATCH(K2,B:B,0)+4)



应用3:与OFFSET函数联合使用,获取某个动态数据区域

在对企业经营进行分析时,经常要计算指定月份的累计值,或者分析某个时间区间内的销售收入,或者要设计特殊的自动化数据分析模板,此时在汇总计算特定数据,OFFSET函数就是一个必不可少的函数了,而为了获取指定数据区域,MATCH的定位就显得非常重要了。

下面就是要对指定月份、指定项目做两年同比分析,包括当月数分析和累计数分析,此时,相关公式如下:

2014年当月数:=VLOOKUP(S5,B4:N10,MATCH(S4,B3:N3,0),0)

2014年累计数:=SUM(OFFSET(C3,MATCH(S5,B4:B10,0),,1,MATCH(S4,C3:N3,0)))



下面的例子就是要分析指定产品下客户分布,此时需要使用OFFSET定义动态名称,但是在OFFSET函数中,必须嵌套MATCH来确定指定产品的位置,定义的两个动态名称及其公式分别为:

客户:=OFFSET($B$2,MATCH($G$2,$A$2:$A$17,0)-1,,COUNTIF($A$2:$A$17,$G$2),1)

销售额:=OFFSET($C$2,MATCH($G$2,$A$2:$A$17,0)-1,,COUNTIF($A$2:$A$17,$G$2),1)



资讯:
E讯东方(上海倍讯企业管理咨询有限公司) ,为满足不同层次、不同岗位、不同职业的职场人士要求,开发了系列的Excel学习网络课程,并于2014年8月份正式上线,受到了大家的热烈追捧,很多人从此解脱了数据的困扰,职场上也升职涨薪!目前课程已经进入第三轮循环授课,内容和思路更加丰富。


    关注 E讯学堂


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册