index函数语法说明及应用实例

index函数 index函数是返回表或区域中的值或对值的引用。函数index()有两种形式:数组形式和引用形式。数组形式通常返回数值或数值数组;引用形式通常返回引用。
返回特定行和列交叉处单元格的引用。如果该引用是由非连续选定区域组成的,则可以选择要用作查找范围的选定区域。
函数语法 语法:index(array,row_num,column_num)返回数组中指定的单元格或单元格数组的数值。index(reference,row_num,column_num,area_num)返回引用中指定单元格或单元格区域的引用。
参数:array为单元格区域或数组常数;row_num为数组中某行的行序号,函数从该行返回数值。如果省略row_num,则必须有column_num;column_num是数组中某列的列序号,函数从该列返回数值。如果省略column_num,则必须有row_num。reference是对一个或多个单元格区域的引用,如果为引用输入一个不连续的选定区域,必须用括号括起来。area_num是选择引用中的一个区域,并返回该区域中row_num和column_num的交叉区域。选中或输入的第一个区域序号为1,第二个为2,以此类推。如果省略area_num,则index函数使用区域1
实例:如果a1=68、a2=96、a3=90,则公式“=index(a1:a3,1,1)”返回68。
index函数返回一个值或者对某个值的引用。与其他函数如match函数联合使用,可以构造强大的公式。
什么情况下使用index函数? index函数可以返回一个值或者对某值的引用,因此可以使用该函数来:查找所选月份的销量;获取对指定行、列、区域的引用;基于给定数目创建动态区域;以字母顺序排序文本列。
index函数的语法
index函数有两种语法形式—数组和引用。使用数组形式,返回值;使用引用形式,返回引用。
数组形式的语法如下:
index(array,row_num,column_num)
array是一个数组常量或者单元格区域
如果数组仅有1行或列,那么相应的行/列号参数可选
如果数组大于1行或列,并且仅使用row_num或column_num,返回整行或整列组成的数组
如果忽略row_num,则column_num必需
如果忽略column_num,则row_num必需
如果row_num和column_num参数全都使用,则返回row_num和column_num交叉的单元格中的值
如果row_num或column_num是零,返回整列或整行的值组成的数组
引用形式的语法如下:
index(reference,row_num,column_num,area_num)
reference可以引用一个或多个单元格区域-在括号中封闭非连续的区域
如果在引用中的每个区域仅有1行或1列,那么相应的行/列数参数是可选的
area_num选择引用中的区域,从其中返回行列交叉处的值
如果忽略area_num参数,使用区域1
如果row_num或column_num是0,返回整列或整行的引用
结果是一个引用,可用于其他函数中
index陷阱
如果row_num和column_num没有指向数组或引用里的单元格,那么index函数返回#ref!错误。
示例1:查找所选月份的销量
输入行号,index函数返回引用中该行所在位置的销量。这里的数字是4,因此返回四月份的销量。
=index($c$2:$c$8,f2)
要使该公式更灵活,可以基于从下拉列表中选择的月份使用match函数返回行号。
=index($c$2:$c$8,match($f$2,$d$2:$d$8,0))
示例2: 获取对指定行、列、区域的引用
本例中,有一个名为monthamts的命名区域,由3个非连续的区域组成。monthamts区域有3块-每个月一块-并且在每块有4行2列。下面是monthamts名称的命名公式:
=’ex02′!$b$3:$c$6,’ex02′!$e$3:$f$6,’ex02′!$h$3:$i$6
使用index函数,可以返回指定区域和月份的成本或收入。
=index(monthamts,b10,c10,d10)
可以乘以index函数的结果,例如单元格f10中的税计算:
=0.05*index(monthamts,b10,c10,d10)
或者,使用cell函数返回引用,显示结果所在的单元格的地址,例如单元格g10中的公式:
=cell(“address”,index(monthamts,b10,c10,d10))
示例3:基于给定数目创建动态区域
可以使用index函数创建动态区域。在本例中,已经使用下面的公式创建了名称为monthlist的命名区域:
=’ex03′!$c$1:index(‘ex03′!$c:$c,counta(‘ex03′!$c:$c))
如果在列c中添加另一个月,将自动显示在单元格f2中使用monthlist作为数据源的数据有效性下拉列表中。
示例4:按字母顺序排序文本列
在最后一个示例中,index函数与几个其他函数一起组合使用,返回以字母顺序排列的月份列表。countif函数显示在指定的月名之前有多少个月份名称。small函数返回列表中最小的项,match函数返回该月份所在的行号。
公式是数组公式,因此输入完后要按ctrl+shift+enter组合键。
=index($c$4:$c$9,match(small(
countif($c$4:$c$9,”《”&$c$4:$c$9),row(e4)-row(e$3)),
countif($c$4:$c$9,”《”&$c$4:$c$9),0))

安科瑞ARD3M电动机保护器在煤炭行业中的应用
基于总线技术的新一代开放式DCS系统在水泥熟料生产线中的应用
示波器直流和交流耦合
一文解析计算影像学
工业平板电脑在MES生产线管理系统的应用
index函数语法说明及应用实例
ESD/浪涌保护器件使用方法:贴片压敏电阻
千兆电口模块SFP-GE-T有什么用
如何正确使用及保养锂离子电池?
科通技术获开放原子全球开源峰会颁授白金捐赠人及生态领航奖
P89V51RD2微处理器
Firefox 84发布:首个支持苹果M1的设备
泵吸式油烟在线监测仪的介绍
智慧城市 | 5G基站热身赛 超频版5G光通讯产品下半年出货
持续耕耘显卡市场,英特尔锐炫驱动重大升级
大气负氧离子自动监测系统优势分析
各大科技公司公布了第三季度财报,财报的数据才是喧闹背后真实的世界
传统的ATM上的IP
电子注入和原子界面工程用于稳定缺陷的1T富MoS2作为储钠高速阳极
25 kW SiC直流快充设计指南:DC-DC级的设计考虑因素和仿真