公式返回连续倒数第二个数字

我有一个公式:

=INDEX(K14:V14,MATCH(9.99999999999999E+307,K14:V14)) 

其提供列范围中的最后一个数字数据点的结果。 不过,我也看到有一个公式,报告倒数第二个数据点。

虽然我更喜欢更简洁的1E+99您的原始公式非常适合查找连续的最后一个数字。 您只需使用具有类似MATCH函数的INDEX函数将MATCH函数使用的范围重新划分为比最后一个数字less一列,从而限制列查看。

排在倒数第二

K12中的公式是,

 =INDEX(K14:V14, MATCH(1E+99, K14:INDEX(K14:V14, MATCH(1E+99, K14:V14)-1))) 

如果您的价值跟上趋势,也可以使用新的AGGREGATE¹function执行。

 =INDEX(K$14:V$14, AGGREGATE(14, 6, COLUMN($1:$12)/SIGN(LEN(K$14:V$14)), 2)) 

在K14:V14范围内有12列。 通过强制任何列的空白到#DIV/0! 错误(并且忽略6作为选项参数的错误),我们可以检索第二个( k参数中的2)最后一个数字。

这个公式的优点是AGGREAGATE的14个子函数模仿标准工作表LARGE函数 。 用ROW(1:1)replace2,然后填写下来,然后返回一系列从右到左工作的非空白数字。 (请参阅示例图像中的w10:W13)。

¹AGGREGATEfunction是在Excel 2010中引入的。它在早期版本中不可用。

这个公式将返回第二个数据点到最后一个数据点:

 =LOOKUP(2,1/K14:INDEX(K14:V14,MATCH(1E+99,K14:V14)-1),K14)