LET+LAMDBA循环求求大神正解

=LET(A,COUNTA(Sheet1!A:A),B,IFERROR(TAKE(HSTACK(Sheet1!A:D,Sheet1!F:G,Sheet1!H:H+Sheet1!L:L,Sheet1!P:P),A),0),C,DROP(DROP(UNIQUE(Sheet1!B:B),1),-1),D,GROUPBY(CHOOSECOLS(B,1),CHOOSECOLS(B,3,4,5,6,7,8),SUM,3,1,,CHOOSECOLS(B,2)=CHOOSEROWS(C,1)),E,LET(F,LAMBDA(X,Y,IF(X=0,Y,F(X-1,HSTACK(CHOOSECOLS(B,3,4,5,6,7,8),SUM,3,1,,CHOOSECOLS(B,2)=CHOOSEROWS(C,X),Y)))),F(COUNTA(C),"")),E) 这套公式,变量D结果是正常的,变量E结果错误,是因为LET函数的作用域问题吗,求大神给出正解,谢谢
河南省
浏览 203
1
点赞
分享
+1
12
1 +1
全部评论 12
 
1231393578237
=LET(A,COUNTA(Sheet1!$A:$A),B,IFERROR(TAKE(HSTACK(Sheet1!$A:$D,Sheet1!$F:$G,Sheet1!$H:$H+Sheet1!$L:$L,Sheet1!$P:$P),A),0),C,DROP(DROP(UNIQUE(Sheet1!$B:$B),1),-1),D,PIVOTBY(CHOOSECOLS(B,1),CHOOSECOLS(B,2),CHOOSECOLS(B,3,4,5,6,7,8),SUM,3,1,,0,-1),D)
· 四川省
回复
 
百雯不如一见
感觉可以问一下AI写公式,看看他给出的思路是什么样的
· 湖北省
回复
 
一场凉凉雪
vba或者python去做
· 广东省
回复
杨乐
VBA、PY都不会,看了一些教学视频,大部分都是做软件功能那一类的,具体数据查询和处理的不多,也可能看的太少了
· 河南省
回复
 
千叶
其他的我也看的不太明白了
· 湖北省
回复
杨乐
就是竖列月份汇总,横列把住院、门诊、慢病。。。再分类汇总。
· 河南省
回复
 
千叶
递归的第二参数改成0试试, 我自己测了下空字符串递归计算就有异常
· 湖北省
回复
杨乐
我试试
· 河南省
回复
 
蜗牛
你可以说下自己的需求,让大家看看,也许不用循环函数就能解决。我是能力有限,现在还没搞懂循环怎么准确传递数据,返回想要的结果。
· 河南省
回复
杨乐
=LET(A,COUNTA(Sheet1!A:A),B,IFERROR(TAKE(HSTACK(Sheet1!A:D,Sheet1!F:G,Sheet1!H:H+Sheet1!L:L,Sheet1!P:P),A),0),C,DROP(DROP(UNIQUE(Sheet1!B:B),1),-1),D,GROUPBY(CHOOSECOLS(B,1),CHOOSECOLS(B,3,4,5,6,7,8),SUM,3,1,,CHOOSECOLS(B,2)=CHOOSEROWS(C,1)),E,GROUPBY(CHOOSECOLS(B,1),CHOOSECOLS(B,3,4,5,6,7,8),SUM,3,1,,CHOOSECOLS(B,2)=CHOOSEROWS(C,2)),。。。。字数限制,无法发太多,后面就是 重复获取后再合并D,E,F,G 我用这个函数实现了我现在要的功能,但是如果项目多的话,需要增加函数的长度不说,还无法确定是否全部写进去了。就是做也下图这样的表格进行汇总
· 河南省
回复