获取行中的第一个非空单元格

Get first non-empty cell in row

在 Google 表格中,如何获取从第 C 列开始的行 17 中第一个非空单元格的值?

尝试:

=INDIRECT(ADDRESS(17, INDEX(MIN(IF(C17:17<>"", COLUMN(C17:17), )))))

我找到了另一种可行的方法,但不如 player0 的优雅。

=INDEX( FILTER( (SORT(TRANSPOSE(C17:17),TRANSPOSE(COLUMN(C17:17)),FALSE)) , NOT( ISBLANK( (SORT(TRANSPOSE(C17:17),TRANSPOSE(COLUMN(C17:17)),FALSE)) ) ) ) , ROWS( FILTER( (SORT(TRANSPOSE(C17:17),TRANSPOSE(COLUMN(C17:17)),FALSE)) , NOT( ISBLANK( (SORT(TRANSPOSE(C17:17),TRANSPOSE(COLUMN(C17:17)),FALSE)) ) ) ) ) )

我把这个从另外两个关于 SO 的答案放在一起,一个关于如何反转一行中的单元格,一个关于找到一列中的最后一个非空单元格。

所以这个公式反转 C17:17,但将其保留为一列:

=(SORT(TRANSPOSE(C17:17),TRANSPOSE(COLUMN(C17:17)),FALSE))

然后在查找列中的最后一个非空值时,将此结果用作范围,这将是原始行中的第一个非空值。 (来自 Get the last non-empty cell in a column in Google Sheets) 我用上面的公式替换了下面的 A:A。

=INDEX( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ; ROWS( FILTER( A:A ; NOT( ISBLANK( A:A ) ) ) ) )

结果不是很漂亮,但它起作用了。

我正在查看类似的问题并找到了类似的解决方案,可能对您有用:

=INDEX(C17:17,MATCH(TRUE,C17:17<>"",0))

据我了解,MATCH 将找到 C17:17 中第一个元素的位置,它不同于 ""(确切地说,因此是 0),索引将从中检索值相同范围。