在本课程中,我们来学习和掌握MATCH函数。
首先说说MATCH的语法规则。该函数的语法规则如下:
MATCH (lookup_value, lookup_array,[match_type])
参数
lookup_value必填参数,需要在 lookup_array 中查找的值。例如,如果要在电话簿中查找某人的电话号码,则应该将姓名作为查找值,但实际上需要的是电话号码。
lookup_value参数可以为值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。
lookup_array必填参数,要搜索的单元格区域。
match_type可选参数,数字 -1、0 或 1。match_type 参数指定 Excel 如何在 lookup_array中查找lookup_value的值。此参数的默认值为 1。
下表介绍该函数如何根据 match_type参数的设置查找值:
Match_type:1 或省略,表示MATCH 函数会查找小于或等于 lookup_value的最大值。lookup_array 参数中的值必须按升序排列,例如:...-2, -1, 0, 1,2, ..., A-Z, FALSE, TRUE。
Match_type:0,表示MATCH 函数会查找等于 lookup_value的第一个值。lookup_array参数中的值可以按任何顺序排列。
Match_type:-1,表示MATCH 函数会查找大于或等于 lookup_value 的最小值。lookup_array 参数中的值必须按降序排列,例如:TRUE,FALSE, Z-A, ...2, 1, 0, -1, -2, ... 等等。
功能
MATCH 函数可在单元格区域中搜索指定项,然后返回该项在单元格区域中的相对位置。
接下来我们用两个实例来学习如何使用MATCH函数。
第一个例子用的示例表格如下。表格列举了从一月到六月份,4个NBA大头公仔的销售情况。
接下来的问题是如何用MATCH函数写一个公式计算某个指定公仔产品在某个月份的销售额。首先把B4:G7这个区域命名为Sales。然后在C10单元格输入公式=MATCH(A10,A4:A7,0),D10单元格输入公式=MATCH(B10,B3:G3,0),E10单元格输入公式=INDEX(Sales,C10,D10),详见下图
使用公式=MATCH(A10,A4:A7,0)得到Kobe这个产品在被查找区域对应第2行,使用公式=MATCH(A10,A4:A7,0)得到June这个月在被查找区域对应第6列,最后再使用INDEX函数,使用公式=INDEX(Sales,C10,D10),就得到Kobe这个公仔产品在June这个月的销售数字。
下面再举一个例子说明如何使用MATCH函数。下图列出了401个俱乐部球员在2001赛季的薪资。这里的薪资没有被排序。我们的问题是如何使用公式找到薪资最高球员,和薪资排名第5的球员。
解决这个问题的思路如下:
1. 首先使用MAX函数找到最高的薪资,使用LARGE函数找到第5高的薪资
2. 然后用上面找到的两笔薪资作为被查找的值,使用MATCH函数找到这两笔薪资的相对位置
3. 最后使用VLOOKUP函数和上一步获得的两笔薪资的相对位置得到这两笔薪资对应的球员名字。
下图是最后得到的结果。从下图中可见,我们在C9单元格输入公式=MAX(salaries)得到最高薪资,在D9单元格输入公式=LARGE(salaries,5)得到第5高的薪资。然后用获得的这两笔薪资作为MATCH函数的输入,使用公式=MATCH(C9,salaries,0)和公式=MATCH(D9,salaries,0)得到这两笔薪资在薪资范区域的相对位置。最后,我们把获得的两个相对位置作为VLOOKUP的输入,使用公式=VLOOKUP(C8,lookup,2)和公式=VLOOKUP(D8,lookup,2)就得到了最高薪资的球员姓名和薪资排名第5高的球员的姓名。
以上就是今天的课程,大家有什么问题可以给我留言
微信扫一扫 关注"人人都是数据分析工程师"
网友评论