找回密码
 立即注册

QQ登录

只需一步,快速开始

zjac

金牌服务用户

4

主题

15

帖子

55

积分

金牌服务用户

积分
55
最新发帖
zjac
金牌服务用户   /  发表于:2023-6-26 13:31  /   查看:2776  /  回复:14
10金币
本帖最后由 Joestar.Xu 于 2023-6-26 15:56 编辑

请教一下,使用设计器设置全部单元格锁定并保护工作表,开放筛选和排序权限,为何与代码设置结果不同,设计器设置的,在操作栏可以进行排序,而代码设置的操作栏的排序按钮全部被置灰。录屏和代码如下:

图为设计器手动设置:

设计器保护.gif

图为代码设置:

代码保护.gif

以下为代码(spreadjs 16.1.3):

spread.sheets.forEach(sheet => {
      sheet.options.protectionOptions = {
        allowFilter: true,
        allowSort: true
      }
      sheet.options.isProtected = true;
      sheet.getRange(0, 0, sheet.getRowCount(), sheet.getColumnCount()).locked(true);
    })


14 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-26 15:35:13
沙发
本帖最后由 Joestar.Xu 于 2023-6-26 15:43 编辑

您好,问题已复现,这边调查一下,有进展我会在帖子下回复您。

本帖先做保留处理了。
回复 使用道具 举报
zjac
金牌服务用户   /  发表于:2023-6-26 15:49:59
板凳
Joestar.Xu 发表于 2023-6-26 15:35
您好,问题已复现,这边调查一下,有进展我会在帖子下回复您。

本帖先做保留处理了。

好的,感谢
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-26 15:57:14
地板

您客气了
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-30 11:47:49
5#
您好,请问您为什么要设置下面这句代码呢?

sheet.getRange(0, 0, sheet.getRowCount(), sheet.getColumnCount()).locked(true);

因为初始状态下所有的单元格的locked属性都是true,所以能否详细说明一下?
回复 使用道具 举报
zjac
金牌服务用户   /  发表于:2023-7-5 13:37:15
6#
Joestar.Xu 发表于 2023-6-30 11:47
您好,请问您为什么要设置下面这句代码呢?

sheet.getRange(0, 0, sheet.getRowCount(), sheet.getColum ...

我理解单元格锁定的状态应该是保存在excel文件中的,我考虑用户可能在上传文件到spreadjs之前,已经对一些单元格进行过设置,所以先将所有状态重置
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-5 13:59:38
7#
zjac 发表于 2023-7-5 13:37
我理解单元格锁定的状态应该是保存在excel文件中的,我考虑用户可能在上传文件到spreadjs之前,已经对一 ...

收到,我们这边再调研一下,有进展我会再回复您。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-5 18:07:30
8#
您好,这个问题被确认为是一个Bug,因为当前的行为与Excel的行为不符。

在表单保护的情况下,对单元格进行排序,即使能够点击排序按钮,也无法触发排序操作,如下图:

9.gif834436034.png

您能接受这样的修复方案吗?
回复 使用道具 举报
zjac
金牌服务用户   /  发表于:2023-7-7 11:09:10
9#
Joestar.Xu 发表于 2023-7-5 18:07
您好,这个问题被确认为是一个Bug,因为当前的行为与Excel的行为不符。

在表单保护的情况下,对单元格进 ...

和excel的行为保持一致就好。
另外这是针对排序的修复,保护之后筛选是否还能用呢
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-7 11:30:28
10#
zjac 发表于 2023-7-7 11:09
和excel的行为保持一致就好。
另外这是针对排序的修复,保护之后筛选是否还能用呢

保护之后的筛选功能在Excel中是可以使用的,目前的SpreadJS在相同情况下也是可以使用的,这点应该会保持不变,仅修改不一致的部分。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部