公式数组BUG问题
=LET(a,LET(z,GROUPBY(HSTACK('[汇总表.xlsx]已过账'!$D$2:$D$441960,'[汇总表.xlsx]已过账'!$M$2:$N$441960,'[汇总表.xlsx]已过账'!$E$2:$E$441960,'[汇总表.xlsx]已过账'!$H$2:$H$441960),'[汇总表.xlsx]已过账'!$C$2:$C$441960,MAX,,0,-6,COUNTIF(I2:$I$7,'[汇总表.xlsx]已过账'!$D$2:$D$441960)),LET(fx,LAMBDA(x,TAKE(x,1)),GROUPBY(DROP(z,,-2),CHOOSECOLS(z,5,6),fx,0,0,-1))),d,CHOOSECOLS(a,4),e,CHOOSECOLS(a,5),HSTACK(CHOOSECOLS(a,1,2,3,4),IF(COUNTIFS('组织架构(业代)'!A2:A192,e,'组织架构(业代)'!C2:C192,"*"&d&"*"),e,IF(e="-","-","已流失")),CHOOSECOLS(a,6,5)))
上面的公式在WPS 12.1.0.20305是正常体现的。后面所有的新版本都不行了,这个公式就会发生错误!
LET(z,GROUPBY(HSTACK('[汇总表.xlsx]已过账'!$D$2:$D$441960,'[汇总表.xlsx]已过账'!$M$2:$N$441960,'[汇总表.xlsx]已过账'!$E$2:$E$441960,'[汇总表.xlsx]已过账'!$H$2:$H$441960),'[汇总表.xlsx]已过账'!$C$2:$C$441960,MAX,,0,-6,COUNTIF(I2:$I$7,'[汇总表.xlsx]已过账'!$D$2:$D$441960)),LET(fx,LAMBDA(x,TAKE(x,1)),GROUPBY(DROP(z,,-2),CHOOSECOLS(z,5,6),fx,0,0,-1)))
升级的新版本,这段标红的数组公式放在A1单元格是正确且正常体现的。若用A1#这种代替标红的代码,又是正常的。如下:
=LET(a,A1#,d,CHOOSECOLS(a,4),e,CHOOSECOLS(a,5),HSTACK(CHOOSECOLS(a,1,2,3,4),IF(COUNTIFS('组织架构(业代)'!A2:A192,e,'组织架构(业代)'!C2:C192,"*"&d&"*"),e,IF(e="-","-","已流失")),CHOOSECOLS(a,6,5))) 这段代码是正常的
又换另一种方式测算:
=LET(a,LET(z,GROUPBY(HSTACK('[汇总表.xlsx]已过账'!$D$2:$D$441960,'[汇总表.xlsx]已过账'!$M$2:$N$441960,'[汇总表.xlsx]已过账'!$E$2:$E$441960,'[汇总表.xlsx]已过账'!$H$2:$H$441960),'[汇总表.xlsx]已过账'!$C$2:$C$441960,MAX,,0,-6,COUNTIF(I2:$I$7,'[汇总表.xlsx]已过账'!$D$2:$D$441960)),LET(fx,LAMBDA(x,TAKE(x,1)),GROUPBY(DROP(z,,-2),CHOOSECOLS(z,5,6),fx,0,0,-1))),d,CHOOSECOLS(a,4),e,CHOOSECOLS(a,5),HSTACK(CHOOSECOLS(a,1,2,3,4),IF(COUNTIFS('组织架构(业代)'!A2:A192,e,'组织架构(业代)'!C2:C192,"*"&d&"*"),e,IF(e="-","-","已流失")),CHOOSECOLS(a,6,5)))
把hstack的第二个参数去掉,也就是标蓝色的去掉,公式又是正常的
以上两种方式,把标红色的区域用A1#这种方式就能正常体现,或者将countifs这个标蓝色的公式去掉又能正常体现。而WPS 12.1.0.20305这个版本是没有任何问题。所以不知道升级后的版本问题出在哪? 想用新版本也用不了,希望开发能解决这个Bug问题!我的手机号18671553217,微信同号,可以远程确认bug!