MATCH函数+INDEX函数组合

时间:2022-03-28 07:12:46 

在Excel中,MATCH函数和INDEX函数是一对非常经典的组合,我们经常能够在Excel公式中看到他俩的“身影”。MATCH函数返回查找值在单元格区域或者数组中的位置,INDEX函数返回这个位置的数据。下面,让我们看看MATCH函数和INDEX函数组合使用的一些例子,从中体会这对组合的强 * 。

查找满足多个条件的数据

如下图1所示的工作表,数据区域为B3:D16,求单元格G2中指定班级和单元格G3中指定姓名的学生成绩?在单元格G4中使用数组公式:

=INDEX(D3:D16,MATCH(G2&G3,B3:B16&C3:C16,0))

其中,MATCH(G2&G3,B3:B16&C3:C16,0)查找到指定班级的学生在数据区域中的位置,作为INDEX函数的参数来提取值。

MATCH函数+INDEX函数组合

图1

总是获取列表中的最后一个数据

如下图2所示的工作表,求列表区域B3:D16中最后一位同学的成绩?在单元格H4中的公式:

=INDEX($D$3:$D$16,MATCH(9.9E+307,$D$3:$D$16))

其中,MATCH(9.9E+307,$D$3:$D$16)总是获取D3:D16中最后一个数据所在的位置。

MATCH函数+INDEX函数组合

图2

创建动态区域

动态区域就是当该区域中增加或删除数据时,引用的区域会自动调整。

仍以图2所示的工作表为例,将上例中的公式作为单元格引用的第二个元素:

$B$3:INDEX($D$3:$D$16,MATCH(9.9E+307,$D$3:$D$16))

因为INDEX函数在引用的开始单元格和冒号之后,因此不再获取该区域中的最后一个单元格值,而是获取区域中最后一个数据单元格的地址,从而与开始单元格组成单元格区域。

为了演示效果,我们将上面的引用定义为名称:DynamicData,如下图3所示,当增加数据后,引用区域会自动扩展。

MATCH函数+INDEX函数组合

图3

创建更加强大的动态区域

下面中的例子,使用INDEX函数、MATCH函数和COUNTA函数结合的公式,根据指定的列名创建动态区域,很特别的是,各列的行数不需要相同。

如下图4所示,当工作表Sheet4中单元格A1内容为“水果”时,动态命名区域为工作表Sheet3中的水果列;当工作表Sheet4中单元格A1内容为“家用电器”时,动态命名区域为工作表Sheet3中的家用电器列,依此类推。

MATCH函数+INDEX函数组合

图4

首先,工作表Sheet3中创建一个动态命名区域:Datas

公式为:

=Sheet3!$A$2:INDEX(Sheet3!$1:$50,50,COUNTA(Sheet3!$1:$1))

如果工作表Sheet3如下图5所示,则创建的动态区域为从列A开始的3列以及从第1行开始的50行的区域。

MATCH函数+INDEX函数组合

图5

然后,选中工作表Sheet4的单元格B2,如图6所示,打开“新建名称”对话框,创建动态名称:DynamicList

公式为:

=INDEX(Datas,1,MATCH(Sheet4!A1,Sheet3!$1:$1,0)):INDEX(Datas,COUNTA(INDEX(Datas,,MATCH(Sheet4!A1,Sheet3!$1:$1,0))),MATCH(Sheet4!A1,Sheet3!$1:$1,0))

MATCH函数+INDEX函数组合

图6

注意:由于要想引用当前单元格左侧的单元格,因此在定义名称时,一定要选择工作表Sheet4的单元格B1。

上面的公式比较复杂,以冒号为界,分为两个部分。

第一部分:INDEX(Datas,1,MATCH(Sheet4!A1,Sheet3!$1:$1,0))

在工作表Sheet3中找到工作表Sheet4单元格A1中的数据所在的单元格,作为起始单元格。

在第二部分中,公式:COUNTA(INDEX(Datas,,MATCH(Sheet4!A1,Sheet3!$1:$1,0)))

找到工作表Sheet4单元格A1中的数据在工作表Sheet3中的列并统计该列非空单元格数量,作为外层INDEX函数的参数。整个第二部分的INDEX公式找到相应列的最后一个数据单元格,作为结束单元格。

结语

使用MATCH函数与INDEX函数的组合,让我们突破VLOOKUP函数的局限,创建常用的获取数据的公式。如果更深入的发掘MATCH函数与INDEX函数的能力,可以创建更加强大的获取数据区域的公式,使其发挥得淋漓尽致。

标签:excel图表制作,excel常用函数,excel数据透视表,Excel教程
0
投稿

猜你喜欢

  • Excel中如何对字段进行合并?Excel进行字段合并的三种情况

    2022-11-20 05:18:17
  • excel图表中Dirty有什么作用?

    2022-10-04 19:32:57
  • 在Word2007中设置标尺的单位

    2023-12-09 14:59:39
  • 如何在word文字中加阴影

    2022-06-19 10:38:03
  • Word2007如何制作文档封面

    2022-08-07 07:56:29
  • excel 2019怎么合并计算?excel 2019合并计算教程

    2023-02-06 23:54:22
  • Excel2007基础教程:通过冻结窗格保持标题可见

    2023-12-05 13:48:11
  • 判断Excel单元格区域中是否有重复值

    2023-11-12 04:46:34
  • Word文档虚线怎么设置?快速设置的技巧!

    2022-08-16 12:12:50
  • Word中度量单位怎么设置英镑为单位?

    2023-12-04 21:42:07
  • word文档打开空白怎么办?

    2023-12-01 02:54:39
  • excel怎么更改折线图垂直轴的数据

    2023-06-22 14:40:12
  • Excel自动圈出最大值,这个红圈功能太赞了~

    2022-05-21 08:46:23
  • Word2003文档中为指定页面单独设置横向

    2023-12-08 23:37:26
  • EXCEL算盈亏平衡

    2023-01-05 08:28:20
  • iOS 14 beta 5 新功能:隐藏相册

    2023-10-05 04:40:24
  • Word为多个字制作带圈效果

    2023-12-11 15:23:13
  • word文档中最后的日期和签名该怎居中对齐?

    2022-08-02 12:13:26
  • Word利用不间断空格使单词保持在同一行文字里

    2023-05-15 08:26:00
  • excel表格怎么设置为黑白方式打印?

    2023-09-12 16:19:34
  • asp之家 电脑教程 m.aspxhome.com