使用匹配和最大公式来获取最后的值
下面的Excel公式可以返回第1行的最后一个值。我不知道它是如何工作的。 特别是,我不明白在公式中使用MATCH(MAX(1:1),1:1,1)-1
的目的。
=OFFSET(A1,0,MATCH(MAX(1:1),1:1,1)-1)
这个公式似乎并不可靠。 有了这个数据:
1 | 2 | 3 | | 9 | 8 | 6 | | 17 | 6 | 4 | 10 | 1
该公式返回17.此外,它不适用于文本。
我build议:
=LOOKUP(2,1/(LEN(1:1)>0),1:1)
这将与文本或数字一起工作。 如果lookup_value
大于被search数组中的任何项目,请参阅帮助LOOKUP以了解它是如何工作的。
Put =MATCH(MAX(1:1),1:1,1)
到单元格中(不在第一行),并在第一行中input一些数字到随机单元格中。 MATCH函数将返回列索引号(例如,列B是2,列Z是26等)。
您正在使用OFFSET函数从A1移位,因此它必须比实际列索引号小1,因此为-1。
find第一行中最后一个数字或date的更好的公式是,
=index(1:1, 1, match(1e99, 1:1))
OFFSET被认为是不稳定的¹; INDEX函数不是。
¹ 只要整个工作手册中的任何内容发生变化,挥发性函数就会重新计算,而不仅仅是当影响其结果的事情发生变化时。 易失性函数的例子是间接 , 偏移 , 今天 , 现在 , 兰德和兰德维恩 。 CELL和INFO工作表函数的一些子函数也会使它们变得不稳定。