-
-
初晴 数据达人Lv4
发表于2021-4-23 15:31
悬赏1
已解决
楼主
获取维级次时,C列获取到了,为二级/三级。但B列在通过C列判断时结果不对。B列的公式:=if(self.rightcell.value='二级',1,2),但是目前B列都显示为2。


最佳答案
本帖最后由 大哥很IT 于 2021-4-24 16:35 编辑
那很明显就是右边公式有问题了 别用宏,在表达式里写self.leftcell(2).dimlevel 左边再用.txt或者value取试试。如果无法显示把表元类型设置成字符型试试
初晴 发表于 2021-4-23 15:38
用取了一下,显示是空的。
那很明显就是右边公式有问题了 别用宏,在表达式里写self.leftcell(2).dimlevel 左边再用.txt或者value取试试。如果无法显示把表元类型设置成字符型试试
7个回答
B列用if(self.rightcell.txt='二级',1,2)也是不对的,显示结果和上图一样。
业务需求:对于行上维度的不同级次,后面单元格中的过滤条件不一样
本帖最后由 大哥很IT 于 2021-4-24 16:35 编辑
初晴 发表于 2021-4-23 15:38
用取了一下,显示是空的。
那很明显就是右边公式有问题了 别用宏,在表达式里写self.leftcell(2).dimlevel 左边再用.txt或者value取试试。如果无法显示把表元类型设置成字符型试试
大哥很IT 发表于 2021-4-23 15:48
那很明显就是右边公式有问题了 别用宏,在表达式里写self.leftcell(2).dimlevel 左边再用.txt或者value取 ...
不写宏的话执行后不显示。


大哥很IT 发表于 2021-4-23 16:12
设置表元数据类型为字符型
试了一下,仍有问题。B2列写成
=if(self.rightcell.txt=
'二级'
,1,0)或
=if(self.rightcell.value=
'二级'
,1,0),最终全部显示为0,无论C列是否为二级。

