INDEX函数,SMALL函数,IF函数和ROW函数
=INDEX(B:B,SMALL(IF($A$2:$A$10=$E$1,ROW($A$2:$A$10),65536),ROW(1:1)))&“”这个公式是什么意思?655...
=INDEX(B:B,SMALL(IF($A$2:$A$10=$E$1,ROW($A$2:$A$10),65536),ROW(1:1))) & “”
这个公式是什么意思?65536是什么意思? 展开
这个公式是什么意思?65536是什么意思? 展开
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也可以
{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单元格里面的内容?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询