Arrayformula/Spill Formula转序号,遇到空格后重新启动?

问题描述 投票:0回答:1

我试图对任务列表中的子任务进行自动编号,以便子任务在主任务标题下进行编号。我现在有一个帮助列,其中的任务被标记为主要或次要以协助公式。

我找到了使用引用行中前一个公式的下拉公式来解决此问题的解决方案:

=IF(LEN(B3)>0,"",IF(C2="",1,C2+1))

但我希望我能得到一个数组公式以使其更加白痴证明。我尝试了这个,基于上面的示例公式并得到了循环引用:

=BYROW(A3:A16,LAMBDA(x,IF(LEN(x)>0,"",IF(LEN(OFFSET(x,-1,))>0,1,OFFSET(x,-1,)+1))))

有没有办法以编程方式实现结果?到目前为止,我想不出一个不引用自身的解决方案。

我非常喜欢基于公式的解决方案,但也对 VBA 感兴趣。

excel excel-formula office365
1个回答
0
投票

尝试使用

SCAN()
功能:


=SCAN("",A3:A15,LAMBDA(α,δ,IF(δ="",α+1,0)))

© www.soinside.com 2019 - 2024. All rights reserved.