龙空技术网

Excel-----黄金组合之INDEX+MATCH深入解读

Excel小陈是我啊 246

前言:

今天你们对“c match”大概比较讲究,小伙伴们都想要剖析一些“c match”的相关知识。那么小编在网络上搜集了一些对于“c match””的相关资讯,希望同学们能喜欢,同学们快快来了解一下吧!

在Excel中,提到数据查找,就不得不说INDEX函数和MATCH函数这对黄金组合,这两个函数的配合使用能够实现大多数情况下的数据查找,且效率非常高。


INDEX函数基本用法INDEX函数是最重要的引用函数之一,通过指定相应行列编号,返回对应位置的元素,它的语法如下:INDEX(array/reference,row_num,[col_num])

array/reference:指的是要查找的区域,可以是数组也可以是单元格或区域的引用。row_num:指的是查找区域的行索引,必选参数。col_num:指的是查找区域的列索引,可选参数。

下面举例说说INDEX函数的基本用法。 1. 参数array为一列数据时。如图1所示,在C1单元格输入公式:=INDEX(A:A,4)公式返回A列第4个单元格的数据,即“马娅娅”。

图12. 参数为一行数据时。 如图2所示,在B3单元格输入公式:

=INDEX(1:1,4)同样的,公式返回第1行第4个单元格的数据,即“马娅娅”。

图23. 参数为多行多列时。 此时,需要同时指定row_num和col_num两个参数。如图3所示,在B9单元格输入公式:

=INDEX(A1:H7,4,2)公式返回A1:H7区域的第4行第2列数据,即“马娅娅”。

图34. 参数row_num为0时。此时公式表示对某一列的引用,如图4所示,在B9单元格输入公式:

=SUM(INDEX(A1:H7,0,3))公式返回A1:H7区域第3列数据即语文成绩之和。

图4

MATCH函数基本用法MATCH函数是Excel中重要的查找函数,他通过在单元格区域中搜索指定值,返回该值在查找行或列的索引位置,它的语法如下:MATCH(lookup_value,lookup_array,[match_type])

lookup_value:指的是我们需要查找的值。lookup_array:指的是搜索的范围,注意这里只能是一行或者一列的引用,不能多行多列。match_type:匹配模式,0表示精确匹配;1表示模糊匹配,但要求搜索范围必须按升序排列;-1表示模糊匹配,但要求搜索范围必须按降序排列。

下面举例说说MATCH函数的基本用法。比如我们在图5的B3单元格输入公式:=MATCH(A3,1:1)公式返回A3单元格中的内容“马娅娅”在第一行数据的索引值4。

图5

INDEXMATCH函数组合实现精确查找如图6所示的一张数据表,我们用INDEX函数和MATCH函数进行数据查找。

图61. 常规查找。我们在K2单元格输入公式:

=INDEX(C:C,MATCH(J2,B:B,0))首先用MATCH函数在B列数据中查找J2单元格即“马娅娅”所在的列索引,结果为4,然后用INDEX函数在C:C索引为4的位置,引用C4单元格中的数据85。

图72. 查找一系列值。比如现在要根据姓名查找各科成绩,在K2单元格输入公式:

=INDEX(C:C,MATCH($J2,$B:$B,0))注意这里的C:C是相对引用,$J2时混合引用,$B:$B是绝对引用,以保证公式在向右拖动的过程中MATCH查找位置不变,而INDEX引用位置C:C自动向右扩展。

图83. 逆向查找。比如现在要根据姓名查找对应班级,在K2单元格输入公式:

=INDEX(A:A,MATCH(J2,B:B,0))这种查找方式和普通查找类似,但是相比于VLOOKUP函数就要好用得多。

图94. 查找指定列。在K2单元格输入如下公式:=INDEX($A:$H,MATCH($J2,$B:$B,0),MATCH(K$1,$1:$1,0))这第1个MATCH函数查找的是J2单元格“马娅娅”对应的行索引,第2个MATCH函数查找的是K1单元格的科目“数学”对应的列索引,最后通过INDEX函数定位到相应行和列,找到对应数据。

图10这个查找方式有一个最大的优点就是,当我们改变查找科目的时候对应查找结果也会随之动态更新,非常方便。

图115. 多条件查找。比如我们要根据班级、姓名两个字段,查找学生对应的数学成绩,我们首先建立一个辅助列,在I2单元格输入公式'=A2amp;B2',将姓名和班级字符串进行连接,然后在M2单元格输入公式:

=IFERROR(INDEX(D:D,MATCH(K2amp;L2,I:I,0)),'查无此人')IFERROR函数的作用是如果查找不到结果,返回错误提示“查无此人”。

标签: #c match