Excel 返回行中倒数第二个数字的公式

Excel 返回行中倒数第二个数字的公式,excel,excel-formula,Excel,Excel Formula,我有一个公式: =INDEX(K14:V14,MATCH(9.99999999999999E+307,K14:V14)) 它提供列范围中最后一个数值数据点的结果。然而,我也期待有一个公式,报告回第二个到最后一个数据点 虽然我更喜欢更简洁的1E+99但您的原始公式非常适合查找一行中的最后一个数字。您只需要使用类似的匹配函数将列所使用的范围重新调整为比最后一个数字少一列,以限制要查看的列 K12中的公式为 =INDEX(K14:V14, MATCH(1E+99, K14:INDEX(K14:

我有一个公式:

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

它提供列范围中最后一个数值数据点的结果。然而,我也期待有一个公式,报告回第二个到最后一个数据点

虽然我更喜欢更简洁的
1E+99
但您的原始公式非常适合查找一行中的最后一个数字。您只需要使用类似的匹配函数将列所使用的范围重新调整为比最后一个数字少一列,以限制要查看的列

K12中的公式为

=INDEX(K14:V14, MATCH(1E+99, K14:INDEX(K14:V14, MATCH(1E+99, K14:V14)-1)))
如果您重视跟上趋势,也可以使用较新版本执行此操作

=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个子函数模仿了标准工作表。将2替换为行(1:1)并填充,然后返回一系列从右到左的非空数字。(参见示例图像中的w10:W13)


⑨Excel 2010中引入了。此公式在早期版本中不可用。

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

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

您应该更改对L列的引用;它们应该是对K列的引用,以防最后一个带有数字的单元格是K14。注意,这个公式确实需要一个包装器。如果没有足够的数字来满足“倒数第二”的要求,那么可能会出现很多问题。我把它删掉了,因为OP似乎在没有训练轮的情况下运行。很棒的公式+1.SIGN(LEN(K$14:V$14)在这方面的效果如何?这与div/0的制作有关?@QHarr,是的,你不想被除一或零以外的任何东西除。空白的长度当然是零,SIGN会将任何其他正整数改为一。只要范围内至少有一个数字,它就会起作用。:)