INDEX函数,不仅获取数据,还能得到单元格区域

通常情况下,使用INDEX函数来获取数据,其通用语法形式为:
=INDEX(array,row_num,column_num)
即,获取参数row_num指定的行和参数column_num指定的列交叉的单元格中的数据 。
INDEX函数常与MATCH函数配合使用,以构建强大的查找公式 。
下图1展示了INDEX函数的一些基本用法 。

INDEX函数,不仅获取数据,还能得到单元格区域

文章插图
图1
然而,INDEX函数不仅可以获取单元格区域或数组中的数据,也可以获取区域 。
一键直达 Excel函数学习2:INDEX函数
使用INDEX函数获取整列或整行
使用INDEX函数可以获取查找的区域中的整列或者整行 。要获取区域中的整列,只需将参数row_num设置为0或为空,这意味着你想获取该列中的所有行 。同理,指定参数column_num为0或空将获取整行 。
例如,下图2所示的工作表,使用INDEX函数获取单元格区域D3:D16,从而对该区域中的数据求和:
=SUM(INDEX(B3:D16,,MATCH(“成绩”,B2:D2,0)))
【INDEX函数,不仅获取数据,还能得到单元格区域】或:
=SUM(INDEX(B3:D16,0,MATCH(“成绩”,B2:D2,0)))
INDEX函数,不仅获取数据,还能得到单元格区域

文章插图
图2
使用INDEX函数创建动态区域
可以使用INDEX函数与COUNTA函数配合来创建动态区域,如下图3所演示 。
INDEX函数,不仅获取数据,还能得到单元格区域

文章插图
图3
刚开始列表中的数据为单元格区域A2:C6 。我们创建一个名为“Student”的动态命名区域 。
在“名称框”中输入:Student
在“引用位置”框中输入公式:
=Sheet2!$A$2:INDEX(Sheet2!$A:$C,COUNTA(Sheet2!$A:$A),3)
注意,此时公式中的INDEX(Sheet2!$A:$C,COUNTA(Sheet2!$A:$A),3)返回列C中最后一个数据单元格 。
因此,当数据扩充至单元格C10时,名为“Student”的区域也自动扩展为A2:C10 。
在下一篇文章中,我们将会看到使用INDEX函数、MATCH函数和COUNTA函数相配合,创建更加灵活的动态区域 。

    推荐阅读