答案1
您可以利用LOOKUP
公式从上方查找下一个非空值。例如,在第 7 行、B 列(如您的示例所示),输入
=LOOKUP(2,1/(B$1:B6<>""),B$1:B6)
这将在 B7 上方的区域中找到下一个非空值。我特意放置了 $ 字符,以便将公式复制到列下方。
(公式的详细解释这里)
如果有几千行,这可能会变得有点慢,因为上面的公式会导致二次运行时间行为。如果是这种情况,但间隙大小有已知限制(例如 2 行),您可以将查找限制为这个特定的行数,例如
=LOOKUP(2,1/(B4:B6<>""),B4:B6)
这仅检查 B7 上方三行是否有效值。