如何在整个范围的每一行中创建一列 last/right-most 非空值

How to create a column of the last/right-most non-empty values in every row from a whole range

假设我有这个传播sheet,我要创建的列是列E

A B C D E
z   z   z
x x   z z
y       y
y x     x

我将如何在 google sheet 秒内解决这个问题?我已经看到一些关于组合 INDEX 和 MATCH 的类似问题的答案,但我无法弄清楚。

还需要处理超过 10 万行的 sheet,所以我不能直接拖动它。

请尝试以下公式:

=ArrayFormula(REGEXREPLACE(ARRAYFORMULA(TRANSPOSE(TRIM(SPLIT( 
   CONCATENATE(IF(LEN(B3:F9),"★"&B3:F9,)&REPT(" "&"♣︎",COLUMN(B3:F3)=COLUMN(F3))),"♣︎")))),".*★(.+)$",""))

除了marikamitsos贴出的解决方案,你也可以试试

=ArrayFormula(substitute(regexextract(trim(transpose(query(transpose(substitute(B3:E," ", "_")),,9^99))), "[^\s]*$"), "_", " "))