中企动力 > 商学院 > excelmatch函数
  • ?

    Excel函数公式:CHOOSE和SUM、VLOOKUP、IF、MATCH组合使用技巧

    夏念云

    展开

    实际工作中,我们经常要根据单元格的内容判断来填充或读取相应的值,而Excel早就为我们想好了相应的函数,此函数就是CHOOSE。如果和其SUM、VLOOKUP、IF、MATCH函数配合使用,功能将更加的强大。

    一、CHOOSE函数作用及语法结构。

    作用:根据给定的索引值,从参数中选出相应值或操作。

    语法:

    =CHOOSE(索引值,值1,值2……)。

    参数解读:

    1、索引值:必需。用于指定所选定的数值参数。

    2、值1:必需。用于指定所选定的数值参数。

    3、值2……:可选。

    方法:

    1、在目标单元格中输入公式:=CHOOSE(4,B3,B4,B5,B6)、=CHOOSE(3,B4,B5,B6)。

    2、Ctrl+Shift+Enter填充。

    解读:

    从示例中可以看出,参数“索引值”会根据不同的范围发生变化。所以在实际应用中我们要根据实际情况进行调整。

    二、与SUM函数的配合使用。

    目的:计算“总库存”或“总销量”。

    方法:

    1、在目标单元格中输入公式:=IF(I3="总销量",SUM(CHOOSE({1,2},C4:C10,E4:E10)),SUM(CHOOSE({1,2},D4:D10,F4:F10)))。

    2、Ctrl+Shift+Enter填充。

    解读:

    1、根据I3单元格的内容进行判断使用的公式,如果I3单元格的值为“总销量”,执行SUM(CHOOSE({1,2},C4:C10,E4:E10)),否则执行SUM(CHOOSE({1,2},D4:D10,F4:F10))。

    2、公式SUM(CHOOSE({1,2},C4:C10,E4:E10))的计算过程是:先读取C4:C10的值,紧接着读取E4:E10的值,然后求和。

    三、与VLOOKUP函数配合使用。目的:通过“产品编码”查询对应的“产品名称”。

    方法:

    在目标单元格中输入公式:=VLOOKUP(J3,CHOOSE({1,2},C4:C10,B4:B10),2,0)。

    解读:

    1、如果通过正常的查询,VLOOKUP函数无法实现查询功能。暨无法完成逆序查询。

    2、CHOOSE({1,2},C4:C10,B4:B10)的作用是对B4:B10和C4:C10两列的值交换位置,形成一个新的后台数组,然后在执行查询功能。

    四、与IF函数的配合使用。

    目的:根据“排名”结果填充“奖项”情况。

    方法:

    在目标单元格中输入公式:=IF(E3<=3,CHOOSE(E4,"一等奖","二等奖","三等奖"),"")。

    解读:

    1、如果当前单元格的值小于等于3,则执行CHOOSE函数,否则返回空值。

    2、根据当前单元格的值,选择相应的等级。如果当前单元格的值为1,则CHOOSE公式为:=CHOOSE(1,"一等奖","二等奖","三等奖"),所以返回“一等奖”。同理返回“二等奖”、“三等奖”。

    五、与MATCH函数配合使用。

    目的:根据销售金额填充提成比例。

    方法:

    在目标单元格中输入公式:=CHOOSE(MATCH(D3,{0,30,60,85,100}),0,3%,5%,7%,8%)。

    解读:

    1、利用MATCH函数对D3单元格的值进行模糊匹配,返回相应的位置,然后利用CHOOSE返回相应的提成比例。

  • ?

    Excel引用函数之HLOOKUP、LOOKUP、MATCH、VLOOKUP

    唐冰颜

    展开

    1、 LOOKUP函数与MATCH函数

    LOOKUP函数可以返回向量(单行区域或单列区域)或数组中的数值。此系列函数用于在表格或数值数组的首行查找指定的数值,并由此返回表格或数组当前列中指定行处的数值。当比较值位于数据表的首行,并且要查找下面给定行中的数据时,使用函数 HLOOKUP。当比较值位于要进行数据查找的左边一列时,使用函数 VLOOKUP。

    如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用函数 MATCH 而不是函数 LOOKUP。MATCH函数用来返回在指定方式下与指定数值匹配的数组中元素的相应位置。从以上分析可知,查找函数的功能,一是按搜索条件,返回被搜索区域内数据的一个数据值;二是按搜索条件,返回被搜索区域内某一数据所在的位置值。利用这两大功能,不仅能实现数据的查询,而且也能解决如"定级"之类的实际问题。

    2、 LOOKUP用于返回向量(单行区域或单列区域)或数组中的数值。

          函数 LOOKUP 有两种语法形式:向量和数组。

    (1) 向量形式

          函数 LOOKUP 的向量形式是在单行区域或单列区域(向量)中查找数值,然后返回第二个单行区域或单列区域中相同位置的数值。

          其基本语法形式为LOOKUP(lookup_value,lookup_vector,result_vector)

          Lookup_value为函数 LOOKUP 在第一个向量中所要查找的数值。Lookup_value 可以为数字、文本、逻辑值或包含数值的名称或引用。

          Lookup_vector为只包含一行或一列的区域。Lookup_vector 的数值可以为文本、数字或逻辑值。

          需要注意的是Lookup_vector 的数值必须按升序排序:...、-2、-1、0、1、2、...、A-Z、FALSE、TRUE;否则,函数 LOOKUP 不能返回正确的结果。文本不区分大小写。

          Result_vector 只包含一行或一列的区域,其大小必须与 lookup_vector 相同。

          如果函数 LOOKUP 找不到 lookup_value,则查找 lookup_vector 中小于或等于 lookup_value 的最大数值。

          如果 lookup_value 小于 lookup_vector 中的最小值,函数 LOOKUP 返回错误值 #N/A。示例详见图1 

    图1

    (2) 数组形式

    函数 LOOKUP 的数组形式在数组的第一行或第一列查找指定的数值,然后返回数组的最后一行或最后一列中相同位置的数值。通常情况下,最好使用函数 HLOOKUP 或函数 VLOOKUP 来替代函数 LOOKUP 的数组形式。函数 LOOKUP 的这种形式主要用于与其他电子表格兼容。关于LOOKUP的数组形式的用法在此不再赘述,感兴趣的可以参看Excel的帮助。

    3、 HLOOKUP与VLOOKUP

    HLOOKUP用于在表格或数值数组的首行查找指定的数值,并由此返回表格或数组当前列中指定行处的数值。

           VLOOKUP用于在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。

          当比较值位于数据表的首行,并且要查找下面给定行中的数据时,请使用函数 HLOOKUP。

          当比较值位于要进行数据查找的左边一列时,请使用函数 VLOOKUP。

          语法形式为:

         HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)

         VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

         其中,Lookup_value表示要查找的值,它必须位于自定义查找区域的最左列。Lookup_value 可以为数值、引用或文字串。

        Table_array查找的区域,用于查找数据的区域,上面的查找值必须位于这个区域的最左列。可以使用对区域或区域名称的引用。

        Row_index_num为 table_array 中待返回的匹配值的行序号。Row_index_num 为 1 时,返回 table_array 第一行的数值,row_index_num 为 2 时,返回 table_array 第二行的数值,以此类推。

        Col_index_num为相对列号。最左列为1,其右边一列为2,依此类推.

        Range_lookup为一逻辑值,指明函数 HLOOKUP 查找时是精确匹配,还是近似匹配。

    4、下面详细介绍一下VLOOKUP函数的应用。

    简言之,VLOOKUP函数可以根据搜索区域内最左列的值,去查找区域内其它列的数据,并返回该列的数据,对于字母来说,搜索时不分大小写。所以,函数VLOOKUP的查找可以达到两种目的:一是精确的查找。二是近似的查找。下面分别说明。

    (1) 精确查找--根据区域最左列的值,对其它列的数据进行精确的查找。示例:创建工资表与工资条

             首先建立员工工资表

     

    图2

            然后,根据工资表创建各个员工的工资条,此工资条为应用Vlookup函数建立。以员工Sandy(编号A001)的工资条创建为例说明。

           第一步,拷贝标题栏

           第二步,在编号处(A21)写入A001

           第三步,在姓名(B21)创建公式=VLOOKUP($A21,$A$3:$H$12,2,FALSE)

          语法解释:在$A$3:$H$12范围内(即工资表中)精确找出与A21单元格相符的行,并将该行中第二列的内容计入单元格中。

          第四步,以此类推,在随后的单元格中写入相应的公式。

     

    图3

    (2) 近似的查找--根据定义区域最左列的值,对其它列数据进行不精确值的查找

             示例:按照项目总额不同提取相应比例的奖金

             第一步,建立一个项目总额与奖金比例的对照表,如图6所示。项目总额的数字均为大于情况。即项目总额在0~5000元时,奖金比例为1%,以此类推。 

    图4

             第二步 假定某项目的项目总额为13000元,在B11格中输入公式=VLOOKUP(A11,$A$4:$B$8,2,TRUE),即可求得具体的奖金比例为5%,如图5。

     

    图5

    5、 MATCH函数

          MATCH函数有两方面的功能,两种操作都返回一个位置值。

          一是确定区域中的一个值在一列中的准确位置,这种精确的查询与列表是否排序无关。

          二是确定一个给定值位于已排序列表中的位置,这不需要准确的匹配.

          语法结构为:MATCH(lookup_value,lookup_array,match_type) 

          lookup_value为要搜索的值。

          lookup_array:要查找的区域(必须是一行或一列)。

          match_type:匹配形式,有0、1和-1三种选择:"0"表示一个准确的搜索。"1"表示搜索小于或等于查换值的最大值,查找区域必须为升序排列。"-1"表示搜索大于或等于查找值的最小值,查找区域必须降序排开。以上的搜索,如果没有匹配值,则返回#N/A。

  • ?

    「每日一课」EXCEL中MATCH和INDEX函数的联合使用

    怀过往

    展开

    在工作中,找到合适的函数使用,将对你的工作效率明显的提升,下面我们就一起来学习下,INDEX和MATCH函数的联合使用;

    联合函数使用场景:动态的实现多条件的查找;

    【举例】:

    要求:在下面表格中动态查找需要某月,某门店的经营额度

    月份

    门店1

    门店2

    门店3

    门店4

    1月

    103000

    119500

    208500

    200400

    2月

    96680

    121500

    200600

    182000

    3月

    95640

    96580

    159800

    188900

    4月

    103960

    149900

    146530

    155600

    5月

    126540

    129800

    155867

    170000

    6月

    130500

    135200

    175890

    169900

    7月

    115600

    184520

    139900

    155500

    8月

    150000

    180000

    168888

    165000

    9月

    140000

    188888

    178000

    10月

    163400

    176300

    179899

    185000

    11月

    115460

    189300

    209999

    190000

    12月

    145630

    185900

    210000

    200000

    方法:利用index返回值功能,MATCH返回位置信息功能,组合起来就可以达到我们的目的;

    公式:=INDEX(B3:E14,MATCH(G2,A3:A14,0),MATCH(G3,B2:E2,0))

    其中:B3:E14 就是选中信息区域;

    MATCH(G2,A3:A14,0) 返回G2="9月”对应的行号;

    MATCH(G3,B2:E2,0)返回G3="门店4”对应的列号;

    具体操作如下:

    欢迎关注,将介绍更多的EXCEL实用函数的应用。

  • ?

    Excel函数公式:掌握Match函数,如虎添翼

    贾若雁

    展开

    Match函数是Excel中使用较为广泛的一个函数。其主要作用是:在“范围”单元格中搜索特定的项,然后返回该项在此区域中的相对位置。

    通俗的将:MATCH函数返回指定值在数组中的位置,如果在数组中没有找到该值则返回#N/A。

    例如:如果A1:A3区域中包含值5,15和28,那么公式=MATCH(15,A1:A3,0)返回数字2,因为15是该区域中的第二项。

    MATCH函数返回指定值在数组中的位置,通常和其它函数配合使用,如INDEX函数、VLOOKUP函数等。

    语法:

    MATCH(lookup_value, lookup_array, [match_type])。

    lookup_value 必需。要在 lookup_array 中匹配的值。lookup_value 参数可以为值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。lookup_array 必需。要搜索的单元格区域。match_type 可选。数字 -1、0 或 1。match_type 参数指定 Excel 如何将lookup_value 与 lookup_array 中的值匹配。此参数的默认值为 1。

    1 或省略

    MATCH 查找小于或等于 lookup_value 的最大值。lookup_array 参数中的值必须以升序排序,例如:...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。

    0

    MATCH 查找完全等于 lookup_value 的第一个值。lookup_array 参数中的值可按任何顺序排列。

    -1

    MATCH 查找大于或等于 lookup_value 的最小值。lookup_array 参数中的值必须按降序排列,例如:TRUE, FALSE, Z-A, ...2, 1, 0, -1, -2, ... 等等。

    注意事项:

    1、MATCH函数返回查找项的位置,而不是值本身。如果需要获取值本身,则需要和其它函数一起使用,如INDEX、VLOOKUP。

    2、匹配文本值时,MATCH 函数不区分大小写字母。

    3、如果 match_type 为 0 且 lookup_value 为文本字符串,您可在lookup_value 参数中使用通配符 - 问号 (?) 和星号 (*) 。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在字符前键入波形符 (~)。

    4、如果 MATCH 函数查找匹配项不成功,它会返回错误值 #N/A。

    一、在未排序的列表中查找数据。

    在实际的工作中,我们所看到的数据经常是无序的,对于无序的列表,可以使用0作为match_type参数,以查找完全匹配的值。如果查找文本并使用0作为参数,那么可以在查找值中包括通配符。

    方法:

    在目标单元格中输入公式:=MATCH(B4,B3:B12,0)。

    二、根据分数获取等级

    目的:获取b11的成绩等级。

    方法:

    在目标单元格中输入公式:=CHOOSE(MATCH(B11,B3:B12,0),D3,D4,D5,D6,D7,D8,D9,D10,D11,D12)。

    三、与VLOOKUP函数的配合使用。

    目的:获取b11的成绩等级。

    方法:

    在目标单元格中输入公式:=VLOOKUP(B11,B3:D12,MATCH("等级",B2:D2,0),0)。

    四、与INDEX函数的配合使用。

    目的:通过表格结构和“姓名”读取分数。

    方法:

    在目标单元格输入公式:=INDEX(B3:C12,MATCH("王凯",B3:B12,0),MATCH("分数",B2:D2,0))。

  • ?

    玩转Excel系列-index+match查找函数用法

    Wade

    展开

    Index+match函数结合在一块使用比较多,多用于查找,同我们之前学的vlookup类似,但是index+match函数比vlookup还方便一点的就是可以逆向查找数据。我们先看一下这两个函数单独的用法:

    index(array,row_num,column_num) 返回一个区域中找出想要的行与列对应的单元格的值,函数解释:第一个参数array表示我们要引用的数据区域,第二个参数row_num表示要引用的行数,第三个参数column_num表示要引用的列数。

    我们看一个简单示例:

    INDEX(A4:D7,1,4),函数示例解释:第一个参数:选择了全部数据,第二个参数:返回数据区域中第二行,第三个参数:返回数据区域的第四列,这样就找到了大飞老师的销售额

    Index 函数第二个示例(几种参数写法):

    INDEX(A4:D7,2,),省略第三个参不写,也可以找到第2行,最后一列的值。请注意,如果现在想找销售数量,那么就要写上列数3才可以

    INDEX(A4:A7,2,),数据区域只有1列,那么就省略第三个参数,找到对应第二行的记录。提示:如果第一个参数数据区域为1列,第三个参数就只能写1,或者是省略。不然就会报#ref错误。数据区域选择一行道理是一样。就是省略第二个参数

    Match函数返回查找内容在数据区域中的位置函数语法:MATCH(lookup_value, lookup_array, match_type),函数解释:第一个参数查找的内容,第二个参数数据区域,第三个参数查询的方式。

    Match函数的第一个示例:

    MATCH(C18,A4:A7,0),解释:查找大飞老师(第一个参数),在数据区域A4:A7中第二个参数出现的位置,第三个参数0表示精确。最后返回2

    上边我们讲了INDEX函数与MATCH函数,大家看完上边的内容,肯定会想。我直接用vlookup函数查找不就行了。现在需求变了,想根据销售的金额查找对应销售员。那该怎么办呢。如下图所示:

    那么这时间我们函数如何写呢,我们先找出600这个销售额所在的行,然后根据所在行去销售员列查找对应的值

    第一步:通过MATCH函数去找对应的值,函数写法MATCH(C21,D4:D7,0),最后返回1

    第二部:使用index函数去查找销售员列。现在行不能确定,我们使用MATCH(C21,D4:D7,0)去查找行。最后函数如下INDEX(A4:A7,MATCH(C21,D4:D7,0),0),最后就可以得到结果会学网了。

    作者:大飞老师

    来源:http://huixue8/a/excelhanshu/117.html

  • ?

    Excel函数公式:含金量超高的Index和Match函数实用技巧

    褚元瑶

    展开

    提到查找引用,大家第一时间想到的肯定是LOOKUP或VLOOKUP等。其实还有两个功能强大且效率非常的查找引用函数MATCH和INDEX。

    一、Match函数。

    作用:提取指定值的相对位置。

    语法结构:=MATCH(查找值,查找范围,查找模式)。

    查找模式有0、-1、1三种,其中0为精准查找,-1位降序查找,1位升序查找。当参数为1或-1时,查找范围内的值必须是升序或降序排序,否则无法得到正确的位置。

    1、精准查找。

    方法:

    在目标单元格中输入公式:=MATCH("小西",B3:B9,0)。

    2、升序查找。

    方法:

    1、选定数据区域。

    2、【数据】-【排序】,【主要关键字】选择【销量】,【排序依据】选择【单元格值】,【次序】选择【升序】并【确定】。

    3、在目标单元格中输入公式:=MATCH(67,C3:C9,1)。

    解读:

    利用MATCHA 函数进行升序或降序查找时,数据源中的值必须按照升序或降序进行排序,才可能查找正确的相对位置。

    3、降序查找。

    方法:

    1、选定数据区域。

    2、【数据】-【排序】,【主要关键字】选择【销量】,【排序依据】选择【单元格值】,【次序】选择【降序】并【确定】。

    3、在目标单元格中输入公式:=MATCH(67,C3:C9,-1)。

    二、INDEX函数。

    1、作用:提取查询范围中指定行列交叉处的值。

    语法结构:INDEX(查询范围,行,列)。

    方法:

    在目标单元格中输入公式:=INDEX(C3:C9,MATCH(H3,B3:B9,0),)。

    解读:

    利用MATCH(H3,B3:B9,0)提取H3单元格中的值所在的行数,然后用INDEX函数提取销量。

    2、高亮度查找引用。

    方法:

    1、选定目标单元格。

    2、输入公式:=INDEX(B3:E9,MATCH($B$12,$B$3:$B$9,0),MATCH(C$2,B$2:E$2,0))。

    3、选定数据源-【条件格式】-【新建规则】-【使用公式确定要设置的单元格】,在【为符合此公式的值设置格式】中输入:=($B3=$B$12)。

    4、单击右下角的【格式】-【填充】,选取填充色,【确定】-【确定】。

    5、动态查询。

  • ?

    MATCH函数和INDEX函数结合,在EXCEL中巧妙实现双重条件下的查询

    简约风

    展开

    有人喜欢函数,赞美其和声之美;有人看见函数就头疼,这是众多读者的反馈。但是当你真正走进了函数的世界,在使用中可以省下很多的时间,进而享受到期间的乐趣,你会对函数刮目相看。

    今天讲MATCH()函数和INDEX()函数结合,实现双重条件的查询。其实这类问题最好用VBA代码来解决,这里我还是不遗余力的写函数,只是让大家明白一种VBA的逻辑思路。好了,闲话少叙,看情景。

    如下:1、2、3月的出勤如下表,

    如果想知道某人1、3月的出勤天数,如何去处理呢?当然如果只是一条数据,轻松地就可以实现,如果数据较多,怎么办呢?在大数据时代,上千条上万条数据呢?不急,函数来帮忙。

    如上图,在蓝色区域分别录入上面公式:以B14为例公式讲解:

    =INDEX($A$1:$D$10,MATCH($A14,$A$1:$A$10,),MATCH($B$13,$A$1:$D$1,))

    $A$1:$D$10是指数值的区域范围;

    MATCH($A14,$A$1:$A$10,)是在$A$1:$A$10区域内查找$A14的值,返回行值。

    MATCH($B$13,$A$1:$D$1,)是在$A$1:$D$1区域内查找$B$13值,返回列值。

    这样在$A$1:$D$10区域内的行列值有了,就可以返回对应的VALUE了。看下面的返回结果:

    这样就输出了需要的结果,是不是很麻烦呢?不要紧,你只要跟着上面的公式,在录入的时候琢磨一下就可以了,不是很难的。上面的公式中还用到了绝对引用和相对引用,就不再多说了。

    需要注意的是:上面的方法适用于人员是唯一值;出勤月份为唯一值的条件。

    总之,函数就是输入和输出的运算,是一种对应关系。关系不乱,函数就不会乱,通过各种关系的组合得到不同的想要得到的值。

    分享成果,随喜正能量

  • ?

    必备的Excel报表技巧:INDEX+MATCH函数

    少女梦

    展开

    IT之家小白课堂,小白也能看懂的教程,欢迎收藏 :)

    Excel的函数公式里,VLOOKUP是经典的查找引用函数。而CP组合INDEX+MATCH,操作上更灵活,很多时候能替代VLOOKUP。

    举例,你有一份客户资料表,包括客户名称、区域、省份等。现在需要在销售明细表里,填入客户名称,自动输出对应的区域、省份。效果图如下。

    怎么操作?可以通过VLOOKUP函数实现,不过IT之家下面讲解的案例,主要采用INDEX+MATCH。首先看下各个函数的基本含义,以及通俗语法。

    1、INDEX函数:返回表中的值。

    =INDEX(在哪儿找,第几行)

    2、MATCH函数:返回指定数值在指定区域中的位置。

    =MATCH(找谁,在哪儿找,匹配方式)

    3、VLOOKUP函数:纵向查找返回表中的值。缺点:查阅值需要位于查找区域的第一列。

    =VLOOKUP(找谁,在哪儿找,第几列,匹配方式)

    下面看看销售报表案例里,INDEX+MATCH嵌套函数的写法。

    A3处的公式如下

    =INDEX(G:G,MATCH(C3,H:H,0))

    这是一个嵌套函数,先计算MATCH函数,再将结果作为参数,计算INDEX函数。

    首先,MATCH在H列查找匹配,结果为4,即C3的值在H列里位于第4行。

    然后将MATCH的结果4作为参数,INDEX在G列查找返回结果G4“广东”。

    在销售明细表里,把这个公式往下拉,那么每次输入客户名称,就会自动输出客户所在省份。这样可以避免手动输错的问题,也能节省一些时间。

    同样的案例,用VLOOKUP函数怎么写?需要将案例中的G列、H列顺序对调,保证要查找的客户名称列,在查找区域首列。

    A3处的公式如下。

    =VLOOKUP(C3,G:H,2,0)

    如果销售表、客户表不在同一张表里呢?很简单,公式前加入“工作表名称!”即可,如下。

    =INDEX(客户!C:C,MATCH(D2,客户!D:D,0))

    报表里还有一个非常重要的功能:数据验证(早期Office版本里叫数据有效性)。有什么作用?可以规范输入的数值格式,同时,还能提供下拉框来选择输入数值。

    如果输入的数值不符合规定,则弹窗提示无法输入。本案例中,就能避免出现“中国联通”“联通”“联通公司”这样的多种写法。当多人维护同一份表格,再也不怕大家乱输数值了。同理,品名规格列也可以做数据验证。

    操作路径:销售表里全选D列,菜单栏-数据-数据验证,允许选择“序列”,来源输入下面的公式。

    =OFFSET(客户!$D$2,,,COUNTA(客户!$D:$D)-1)

    公式含义:销售表里的客户名称列,只能输入客户表里已记录的客户名称。注意要加入绝对引用符号“$”,保证参数数值不变。

    销售报表案例表格:点此下载

  • ?

    Excel Match函数的使用方法及与Index组合使用实例

    Curitis

    展开

    在 Excel 中,Match函数用于返回查找值在数组的位置,它共有三个参数,分别为 lookup_value、lookup_array 和 match_type;其中 match_type 有三个参数,即 1、0、-1,当取不同值时返回不同的结果,其中取 0 时,可用通配符问号(?)和星号(*)进行模糊查找。Match函数除单独使用外,还常常与Index函数一起使用。以下就是Match函数的使用方法及与Index组合使用实例的具体操作方法,实例中操作所用版本均为 Excel 2016。

    一、Excel Match函数语法

    1、表达式:MATCH(lookup_value, lookup_array, [match_type])

    中文表达式:MATCH(查找值, 查找数组, [查找类型])

    2、说明:

    A、Match函数用于返回 lookup_value 在数组中的位置;lookup_value 和 lookup_array 是必选项,match_type 是可选项;如果省略 match_type,则默认值为 1。

    B、match_type 的取值说明:取 1 表示查找小于或等于查找值 lookup_value 的最大值,返回该值在数组中的位置,要求数组按升序排序;取 0 表示查找等于 lookup_value 的第一个值,返回该值在数组中的位置,不要求数组按升序或降序排序;取 -1 表示查找大于或等于 lookup_value 的最小值,返回该值在数组中的位置,要求数组按降序排序。

    C、当 match_type 为 0 且 lookup_value 是文本,可在 lookup_value 中使用通配符“问号 (?) 和星号 (*)”;问号表示任意一个字符,星号表示任意一个或一串字符;如果要查找问号或星号,需要在它们前加转义波形符(~)。

    二、Excel Match函数的使用方法

    (一)match_type 取 1(或省略)的使用实例

    1、假如要查找服装销量表中价格为 80 与 95 元在 E 列中的位置。首先把 E 列按升序排序,框选 E2:E12,选择“数据”选项卡,单击“升序”,在弹出的“排序提醒”窗口中,选择“扩展选定区域”,单击“确定”,则表格记录按价格升序排序;在 G2 中输入公式 =MATCH(80,E2:E12),按回车,则返回 80 在 E2:E12 中的位置 2;再在 G3 中输入公式 =MATCH(95,E2:E12,1),按回车,则返回 5,操作过程步骤,如图1所示:

    图1

    2、说明:公式 =MATCH(80,E2:E12) 和 =MATCH(95,E2:E12,1),一个省略 1,另一个未省略,都表示查找小于或等于 lookup_value 的最大值;80 在 E2:E12 中有,因此返回它所在的位置 2,95 在 E2:E12 中没有,所以返回小于它的最大值 89 所在位置,E2:E12 中有两个 89,返回的是第二个 89 的位置。

    (二)match_type 取 0 的使用实例

    1、查找数值

    A、假如要查找价格为 89 元在 E 列中的位置。把公式 =MATCH(89,E2:E12,0) 复制到 G2 单元格,按回车,返回结果为 4,正是 89 在 E2:E12 中位置,操作过程步骤,如图2所示:

    图2

    B、当 match_type 取 0 时,数组不用排序。如果查找数组中没有的值,则会返回 #N/A 错误,例如查找 87,如图3所示:

    图3

    按回车后,返回 #N/A 错误,如图4所示:

    图4

    2、用通配符问号(?)与星号(*)

    A、假如要查找以“T恤”结尾的服装在 B 列中的位置。把公式 =MATCH("*T恤",B2:B12,0) 复制到 G2 单元格,按回车,返回结果 2,正是“绿色T恤”在 B2:B12 中的位置(返回的是第一个以“T恤”结束的服装在 B2:B12 中的位置),操作过程步骤,如图5所示:

    B、假如要查找只有三个字的服装在 B 列中的位置。把公式 =MATCH("???",B2:B12,0) 复制到 G2 单元格,如图6所示:

    图6

    按回车,返回结果 10,正是“白衬衫”在 B2:B12 中的位置,如图7所示:

    图7

    (三)match_type 取 -1 的使用实例

    1、假如要查找销量为 681 与 750 在 E 列中的位置。框选 F2:F12,选择“数据”选项卡,单击“降序”,在打开“排序提醒”窗口中,选择“扩展选项区域”,单击“确定”,将记录按销量降序排列;把公式 =MATCH(681,F2:F12,-1) 复制到 G2 单元格,按回车,返回结果为 5,正是 681 在 F:F12 中位置;把 681 改为 750,公式变为 =MATCH(750,F2:F12,-1),按回车,结果为 4,操作过程步骤,如图8所示:

    图8

    B、说明:第二个公式 =MATCH(750,F2:F12,-1) 要查找 750,由于 F2:F12 中没有这个值,因此返回大于或等于 750 的最大值 874 在 F2:F12 中的位置,所以结果为 4。

    三、Excel Index 与 Match 组合使用实例

    1、假如要查找价格为 65 元的服装的编号。把公式 =INDEX(A:A,MATCH(65,E1:E12,0)) 复制到 G2 单元格,按回车,返回结果为 WS-585,正是价格为 65 元的服装编号;操作过程步骤,如图9所示:

    图9

    B、公式说明:

    公式 =INDEX(A:A,MATCH(65,E1:E12,0)) 先用 MATCH(65,E1:E12,0) 返回价格为 65 元的服装在 E 列中的位置,结果为 8;再用Index函数返回行号为 8 的服装编号。

    index函数的表达式为:INDEX(array, row_num, [column_num]),第一个参数为数组,第二个参数为行号,第三个参数为列号(可选);示例中省略了列号,因此只返行号为的服装编号。如果既有行号又有列号,则返回行号与列号对应的值。

  • ?

    excel中index和match函数定位查询信息,比你想象的简单!

    空悲叹

    展开

    之前有位学员来上课的时候,小编听到她在抱怨说看了半天index函数和match函数,但是不知道该怎么样去使用它们?确实这两个函数看着挺简单,分开使用也还好,但是想要发挥最大的效果就必须要交叉使用才可以。

    精确定位:MATCH函数

    MATCH函数(lookup-value,lookup-array,match-type),返回查找内容所在的位置。

    lookup-value:表示需要查找的值,数组或单元格引用都可以;

    lookup-array:表示包含所要查找数值的区域,数组或数组引用;

    match-type:表示用于精确查找或模糊查找。取值为-1、1、0 。其中0为精确查找。

    检索查询和交叉查询:index函数

    INDEX函数(array,row-num,column-num),返回制定位置中的内容。

    array:要查找值的单元格区域或数组;

    row-num:返回值所在的行号;

    column-num:返回值所在的列号(行号和列号有一个即可)。

    实训习题:

    左边是公司所有人员的信息统计表,右边是我们需要查找的信息。我们想用名字去查找这个人所在的部门。

    我们需要将名字所在的位置使用match定位出来,再和index函数配合使用。选择姓名所在位置,再选择姓名所在单元格范围,使用精确定位即可。

    在使用了match后,在使用index函数会出现这样的对话框,选择第一个点击确定即可。配合index函数,选择部门所在单元格范围即可完成操作。

    当然在使用函数的过程中,小编也犯了一个错误,就是没有使用绝对应用,到时候出现的结果会不正确,所以我们需要在要改变的数据前面加上$锁死数据。

excelmatch函数

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP