作业帮 > 综合 > 作业

INDEX函数,SMALL函数,IF函数和ROW函数

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/05 06:46:24
INDEX函数,SMALL函数,IF函数和ROW函数

=INDEX(B:B,SMALL(IF($A$2:$A$10=$E$1,ROW($A$2:$A$10),65536),ROW(1:1))) & “”
这是一个数组公式,输入公式后,把鼠标移到单元格的编辑栏上,按ctrl+shift+enter,这时公式加上一个大括号.
{INDEX(B:B,SMALL(IF(A$2:A$10=E$1,ROW(A$2:A$10),65536),ROW(1:1)))&""}
可以提取出与A2:A10等于E1所在行B列的内容.
其中IF($A$2:$A$10=$E$1,ROW($A$2:$A$10),65536)意思为如果a2到a10的值与e1相同,则返回对应行数值(例如a3=9 e1=9 则返回值为3),否则则返回65536
SMALL(IF($A$2:$A$10=$E$1,ROW($A$2:$A$10),65536),ROW(1:1))则是返回第一个符合条件的值所在的行数,若没有则返回65536


对应你给出的表格,返回值为4

65536为excel2003版本中的最大行数,为什么要用65536是因为一般1列的最后一行都用不到,所以即使small函数最后取数到65536行也可以保证返回0值,当然你的公式也可以把65536改为18也可以
再问: =IFERROR(INDEX(试块记录!$A$7:$P$627,SMALL(IF(试块记录!$E$7:$E$627=$G$2,ROW(试块记录!$E$7:$E$627)-ROW(试块记录!$E$7)+1,ROW(试块记录!$E$627)+1),ROW(1:1)),2),"”") 上面在数组模式下显示 试块记录!B7 单元格里面的内容,要怎么才能让它显示 试块记录!A7单元格里面的内容?