Excel:查看数组并返回第n个非“na”值

在第3行中,我有一组数据,其中包含数值和“na”forms的文本。 如果有人能够帮助我构造一个查看整个数组并返回第n个非“na”值的公式,我将非常感激。

从B列开始的第3行:5,8,na,7,6,3,9,7,na,12

如果n被设置为3,公式将返回7。

如果n设置为9,公式将返回12。

提前致谢。

将公式中的粗体,斜体3作为你的n值:

=(INDEX(ISNUMBER(B3:K3)* COLUMN(B3:K3)), 3 + COUNTA(B3:K3)-COUNT(B3:K3)))

请注意,根据您的示例,将n设置为9将导致#NUM! 错误,因为只有8个数字。 展开B3:K3以适合您的范围,但不要使用整行参考(使用整行参考会大大降低演奏时间)。 如果喜欢,可以创build一个dynamic命名范围,而不是手动设置B3:K3范围。

尝试

=INDEX(3:3,AGGREGATE(15,6,COLUMN(B3:K3)/ISNUMBER(B3:K3),3)) 

这个公式几乎直接来自上帝,又名斯科特·克莱纳(Scott Craner)。 它的工作方式是任何不包含数字的单元格都会给出一个#DIV / 0! 在师的错误。 任何包含数字的单元格都会给出B3:K3中的列。 像SMALL这样的15,6作品集合,但忽略错误单元格,从而给你你想要的答案。