该公式如何返回列中的最后一个值?

时间:2015-04-22 19:34:18

标签: google-sheets

这是一个返回列中最后一个值的公式:

=INDEX(A:A;MAX((A:A<>"")*(ROW(A:A))))

由于部分MAX((A:A<>"")*(ROW(A:A)))返回0,无法理解其工作原理。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

为了回答。细分:

=MAX((A:A<>"")*(ROW(A:A)))

如果它所在的行在ColumnA中有一个空白单元格,则返回0,否则返回1

作为数组公式( Ctrl + Shift + Enter 之前输入)得到:

=ArrayFormula(MAX((A:A<>"")*(ROW(A:A))))  

返回ColumnA中最后一个填充单元格的行号。

将此简化为三行示例,第一行(Row1)为空:

&#39;不是空白&#39; part返回一个数组:FALSE,TRUE,TRUE
1,2,3

的ROW部分

所以将这些相乘(*)放在一起得到一个数组0,2,3(乘以FALSE相当于乘以0并乘以等于1次的TRUE)。

MAX函数然后选择最大值(3)。

INDEX功能然后读取&#39;以上命令返回ColumnA中最后一(第三)行的值。