获取Google表格中列中的最后一个非空单元格
我使用以下function
=DAYS360(A2, A35) 来计算我列中两个date之间的差异。 然而,这个专栏不断扩大,我现在必须在更新电子表格时手动更改“A35”。
有没有办法(在Google表格中)find此列中的最后一个非空单元格,然后在上述函数中dynamic设置该参数?
可能有一种更有说服力的方式,但是这是我提出的方式:
查找列中最后一个填充的单元格的函数是:
 =INDEX( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ; ROWS( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ) ) 
所以如果你把它和你现在的function结合起来看起来就像这样:
 =DAYS360(A2,INDEX( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ; ROWS( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ) )) 
 要find最后一个非空单元格,可以使用INDEX和MATCH函数,如下所示: 
 =DAYS360(A2; INDEX(A:A; MATCH(99^99;A:A; 1))) 
我认为这是一个更快,更容易。
如果A2:A连续包含date,则INDEX(A2:A,COUNT(A2:A))将返回最后一个date。 最后的公式是
 =DAYS360(A2,INDEX(A2:A,COUNT(A2:A))) 
如果该列只扩展连续添加date在我的情况下 – 我用MAX函数来获取最后date。
最终的公式是:
 =DAYS360(A2; MAX(A2:A)) 
我最喜欢的是:
 =INDEX(A2:A,COUNTA(A2:A),1) 
所以,对于OP的需要:
 =DAYS360(A2,INDEX(A2:A,COUNTA(A2:A),1)) 
这个公式获得最后的价值是什么:
 =index(G:G;max((G:G<>"")*row(G:G))) 
这将是您原始任务的最终公式:
 =DAYS360(G10;index(G:G;max((G:G<>"")*row(G:G)))) 
假设你的初始date是G10。
虽然这个问题已经得到解答,但是有一个很好的方法来做到这一点。
 Use just the column name to denote last non-empty row of that column. 
例如:
 如果您的数据在A1:A100并且希望能够向列A添加更多数据,比如稍后可以使用A1:A105或A1:A1234 ,则可以使用以下范围: 
 A1:A 
业余人士的做法是“= CONCATENATE(”A“,COUNTUNIQUE(A1:A9999))”,其中A1是列中的第一个单元格,A9999比我预期的任何条目都要低。 由此产生的A#可以根据需要与INDIRECT函数一起使用。