史上最全INDEX函数教程
INDEX函数是Excel中重要的查找引用函数,不仅可按位置提取数据,还能与其他函数组合使用,实现高效的数据处理。本文系统梳理INDEX函数的核心用法,涵盖基础语法到高阶实战技巧,助力职场人士提升办公效率。
语法解析及基础用法
INDEX函数用于返回指定区域中特定行、列交叉处的值,其基本语法为:
INDEX(array, row_num, [column_num])
即:INDEX(数组或区域, 行号, 列号)
- 当数组为单行或单列时,对应参数可省略。
- 若仅指定行号或列号,函数将返回整行或整列数据(数组形式)。
- 行号与列号同时指定时,返回交叉单元格的值。
- 行号或列号设为0时,返回整列或整行数组,需以数组公式输入(Ctrl+Shift+Enter)。
案例说明:

从A列提取第5个数据:
=INDEX(A:A,5)

从第2行提取第6列数据:
=INDEX(2:2,6)

从B2:M5区域提取第2行第9列数据:
=INDEX(B2:M5,2,9)
隔行提取数据
将一列数据转换为两列显示(如学号与姓名分离):

在D1输入并填充公式:
=INDEX($A:$A,COLUMN(A1)+(ROW(A1)-1)*2)&""
隔列提取数据
从包含计划与实际数据的多列中提取实际值(每隔一列):

在L3输入并填充公式:
=INDEX($B3:$I3,COLUMN(A1)*2)
按条件调取整行数据
根据业务员名称自动提取其所有月份数据:

在H2向右填充公式:
=INDEX($B$2:$E$8,MATCH($G$2,$A$2:$A$8,),COLUMN(A1))
按条件调取整列数据
根据月份提取该月所有业务员的数据:

在H2向下填充公式:
=INDEX($B$2:$E$8,ROW(A1),MATCH($H$1,$B$1:$E$1,))
二维条件交叉查询
根据分公司和季度两个条件查询对应销售数据:

在I4输入公式:
=INDEX(B2:F10,MATCH(I2,A2:A9,),MATCH(I3,B1:F1,))
拆分工资表打印工资条
将工资表一键转换为带标题行的工资条格式:

在H1填充公式:
=CHOOSE(MOD(ROW(A1),3)+1,"",INDEX(A:A,1),INDEX(A:A,1+INT(ROW(A2)/3)))
工资条合并为工资表
将多个工资条还原为标准表格结构:

在H1填充公式:
=INDEX(A:A,IF(ROW(A1)=1,1,2+(ROW(A1)-2)*3))
返回查找到的多个数据
解决一对多查找问题,提取某一著作对应的所有作者:

在E2输入数组公式(按Ctrl+Shift+Enter):
=INDEX(B:B,SMALL(IF(A$2:A$11=D$2,ROW($2:$11),4^8),ROW(A1)))&""
单列转换为多列数据
将一列姓名数据转为每行4个姓名的布局,便于打印:

在C2先向右再向下填充公式:
=INDEX($A:$A,1+COLUMN(A1)+(ROW(A1)-1)*4)&""

