情况:我有一个包含 2 列的选项卡,A 和 B。A 为空白或包含我手动添加的破折号
-
。 B 是一个日期。
期望的行为:当我在 A 列中添加破折号时,我希望日期在同一行的 Col B 中增加 1 天。如果 A 为空,则日期应与其上方的行相同。
当前设置:现在我有一个有效的公式,但我想让它成为一个 ARRAYFORMULA(或 BYROW 等),所以我不需要将我现有的公式拖到任意长度并可能跑过去它在未来。我在
B5
(产生所需结果)中输入并向下拖动的公式是:
=IF(A5="-",
OFFSET(B5,-1,0)+1,
OFFSET(B5,-1,0))
问题:上面的公式非常有效,但我必须将它拖下来,我想避免。我尝试了下面的方法,但每个方法都返回“循环依赖”错误。这是 FLATTEN 之类的东西进来的地方吗?
尝试 1:
=ARRAYFORMULA(IF(A5:A="-",
OFFSET(B5:B,-1,0)+1,
OFFSET(B5:B,-1,0))
尝试 2:
=BYROW(A5:A,LAMBDA(r,IF(r="-",
OFFSET(r,-1,1)+1,
OFFSET(r,-1,1))