喵了个汪白银二
2024-5-21 10:08:35 发布在问答
【常用脚本】 自由表隐藏合并单元格的多列
请问下面场景怎么实现?

1716257201619.png
3327
10
精彩评论10
yhdata_lyaa
发表于 2024-5-21 10:28:42 显示全部楼层
参考脚本
var a=下拉列表参数1.getSelectedObjects()[0]
  var loc1 = new Locator(['c-0'],COL,DETAIL);
    // 第一列 取 0,第 二列为 1,依次类推, 这是第1列  var loc2 = new Locator(['c-1'],COL,DETAIL);
  var loc3 = new Locator(['c-2'],COL,DETAIL);
  var loc4 = new Locator(['c-3'],COL,DETAIL);

if(a=='A'){
    图表1.setColWidth(loc0,200);
    图表1.setColWidth(loc1,200);
    //设置列宽为200,显示列
}
if(a=='B'){
    图表1.setColWidth(loc2,0);
   图表1.setColWidth(loc3,0);
  //设置列宽为0,隐藏列
}

回复

使用道具 2#

喵了个汪白银二
发表于 2024-5-21 10:34:46 显示全部楼层
yhdata_lyaa 发表于 2024-5-21 10:28
参考脚本
var a=下拉列表参数1.getSelectedObjects()[0]
  var loc1 = new Locator(['c-0'],COL,DETAIL);

下拉列表是多选,并不是单选
回复

使用道具 3#

喵了个汪白银二
发表于 2024-5-21 10:36:15 显示全部楼层
喵了个汪 发表于 2024-5-21 10:34
下拉列表是多选,并不是单选

而且列太多了,没有什么办法对合并后的单元格里面的列进行隐藏吗,非要一列列去写死隐藏
回复

使用道具 4#

美滋滋白银三
发表于 2024-5-21 10:48:31 显示全部楼层
yhdata_lyaa 发表于 2024-5-21 10:28
参考脚本
var a=下拉列表参数1.getSelectedObjects()[0]
  var loc1 = new Locator(['c-0'],COL,DETAIL);

问题如下:
1. 楼主那个是复选框,你这个只支持单选
2. 缺少默认初始状态处理。建议所有列每次变化时初始无条件设置为宽等于0,然后根据条件设定哪些列宽为200.
回复

使用道具 5#

yhdata_lyaa
发表于 2024-5-21 10:58:03 显示全部楼层
美滋滋 发表于 2024-5-21 10:48
问题如下:
1. 楼主那个是复选框,你这个只支持单选
2. 缺少默认初始状态处理。建议所有列每次变化时初始 ...

严谨
回复

使用道具 6#

yhdata_lyaa
发表于 2024-5-21 11:00:44 显示全部楼层
喵了个汪 发表于 2024-5-21 10:34
下拉列表是多选,并不是单选

那if条件自己改一下,这个也没有特别好的办法,感觉都有点麻烦
回复

使用道具 7#

喵了个汪白银二
发表于 2024-5-21 11:09:38 显示全部楼层
yhdata_lyaa 发表于 2024-5-21 11:00
那if条件自己改一下,这个也没有特别好的办法,感觉都有点麻烦

是的,不太适用,只能想办法改变数据结构了
回复

使用道具 8#

美滋滋白银三
发表于 2024-5-21 11:28:14 显示全部楼层
就算列很多,其实也不算太麻烦吧。你可以把需要变化的列号以及控制用的选项分别记录在两个数组中,
比如:
var colctrl = ["A","A","B","B"]
var collist = [1,2,3,4]
然后脚本写逻辑,当选项中有"A"时对应的1,2列显示,当选项中有"B"时,对应的3,4列显示。这样今后维护时也可以通过修改数组的值来进行控制,维护成本也低。
回复

使用道具 9#

夜空001青铜一
发表于 2024-11-15 15:04:57 显示全部楼层
yhdata_lyaa 发表于 2024-5-21 10:28
参考脚本
var a=下拉列表参数1.getSelectedObjects()[0]
  var loc1 = new Locator(['c-0'],COL,DETAIL);

表怎么设
回复

使用道具 10#

12  
高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
1500W

用户等你来哦

Copyright   ©2012-2025  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部