找回密码
 立即注册

QQ登录

只需一步,快速开始

空中单位
初级会员   /  发表于:2024-11-18 14:40  /   查看:73  /  回复:10
1金币
如题,我在EditStarting事件上设置了修改某列时args.cancel = true,但是如果这个单元格上设置过数据验证,则可以通过选择右侧的下拉框进行修改,我现在希望不可编辑该单元格 image.png897036132.png

10 个回复

倒序浏览
Wilson.Zhang
超级版主   /  发表于:4 天前
沙发
您好!可以通过表单保护锁定该单元格,不允许对其进行编辑。
回复 使用道具 举报
空中单位
初级会员   /  发表于:4 天前
板凳
Wilson.Zhang 发表于 2024-11-18 15:49
您好!可以通过表单保护锁定该单元格,不允许对其进行编辑。

能不能锁一列,我有一个新增行的操作,我希望新增的行上对应的单元格也有保护
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:4 天前
地板
空中单位 发表于 2024-11-18 16:14
能不能锁一列,我有一个新增行的操作,我希望新增的行上对应的单元格也有保护

可以的,选中整表取消单元格锁定,然后选中整列对该列设置单元格锁定,在这一列任意位置插入新行后新产生的单元格锁定状态与该列整体保持一致。您可以亲测下。
回复 使用道具 举报
空中单位
初级会员   /  发表于:4 天前
5#
Wilson.Zhang 发表于 2024-11-18 17:37
可以的,选中整表取消单元格锁定,然后选中整列对该列设置单元格锁定,在这一列任意位置插入新行后新产生 ...

请问代码具体是怎么写呢,没找到
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:3 天前
6#
空中单位 发表于 2024-11-18 17:45
请问代码具体是怎么写呢,没找到

参考如下代码:
  1. //  设置整表
  2. sheet.getRange(-1, -1, -1, -1).locked(false);
  3. //  设置整列
  4. sheet.getRange(-1, col, -1, 1).locked(true);
复制代码


回复 使用道具 举报
空中单位
初级会员   /  发表于:3 天前
7#
image.png583552245.png
回复 使用道具 举报
空中单位
初级会员   /  发表于:3 天前
8#

试过了,没用,看我上面图,还是能选择修改
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:3 天前
9#
空中单位 发表于 2024-11-19 15:12
试过了,没用,看我上面图,还是能选择修改

需要结合表单保护使用,加上sheet.options.isProtected = true即可对sheet开启表单保护。
表单保护.gif
回复 使用道具 举报
空中单位
初级会员   /  发表于:前天 11:18
10#
Wilson.Zhang 发表于 2024-11-19 17:15
需要结合表单保护使用,加上sheet.options.isProtected = true即可对sheet开启表单保护。

我是要锁这一列,不是锁整个sheet,而且你锁了表单还要上面代码锁数据验证干嘛呢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部