WPS表格递归有问题
如图, 要求是要根据A列的子目号分别返回其父级的子目,直到长度为3的根目为止.
因子目级数不固定, 所以用递归每次返回"-"之前的文本, 直到文本长度为3为止.
公式如下:
=LET(f,LAMBDA(f,t,IF(LEN(t)<=3,t,HSTACK(f(f,TEXTBEFORE(t,"-",-1)),t))),IFNA(REDUCE({"根目","子目"},A2:A5,LAMBDA(x,y,VSTACK(x,f(f,y)))),""))
如下图, 在Excel中运行正常
在Wps中刚打开时显示正常,但重新运算后(点✅号或按F9)结果异常:如下图
改成下面的形式也不行
=LET(f,LAMBDA(t,IF(LEN(t)<=3,t,HSTACK(f(TEXTBEFORE(t,"-",-1)),t))),IFNA(REDUCE({"根目","子目"},A2:A5,LAMBDA(x,y,VSTACK(x,f(y)))),""))
@金山办公
创作者俱乐部成员