我如何填写一列,复制上面的单元格,除非相邻单元格有值,然后复制该值?

How do I fill down a column, copying the cell above, unless the adjacent cell has a value, then copy that value?

我正在尝试清理数据 table,我想根据 A 列中的最后一个非空值用值填充 B 列。

如果在 B 列中向下复制,此公式有效,但每当我插入一个空白行时就会中断,这是我需要做的。我希望有一个 arrayformula 可以解决这个问题,但还没有找到它。

我的样本 sheet 在这里。 https://docs.google.com/spreadsheets/d/1q73uLmSCFwt1XnWEDOizf9i9uYDfFqXyr_VZ74DOU3c/edit?usp=sharing

我尝试了以下公式的变体:

=ArrayFormula(if(A3:A12="",indirect("B"&row()-1),A3:A12))
=ArrayFormula(if(A3:A12="",offset(B3:B12,-1,0,1,1),A3:A12))
=ArrayFormula(if(A2:A12="",offset(B2:B12,-1,0,1,1),A2:A12))

非常感谢任何指导。

使用:

=ARRAYFORMULA(VLOOKUP(ROW(A2:A12), IF(A2:A12<>"", {ROW(A2:A12), A2:A12}), 2, 1))