You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何防止用户移动Google Sheet中的形状或修改其绑定的脚本

解决Google Sheet中锁定形状位置与禁止修改绑定脚本的方法

一、阻止用户移动形状位置

  • 用Google Apps Script锁定形状的位置与操作权限:
    1. 打开Sheet的脚本编辑器(点击「扩展程序」>「Apps Script」)
    2. 粘贴以下代码,运行一次即可锁定所有形状:
      function lockShapes() {
        const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
        const shapes = sheet.getShapes();
        shapes.forEach(shape => {
          // 锁定位置,禁止移动、调整大小
          shape.setLocked(true);
          // 可选:设置形状不可选中,彻底阻断用户操作入口
          shape.setSelectable(false);
        });
      }
      
    3. 若需允许特定用户编辑形状,可通过「数据」>「保护工作表和范围」设置:选择「限制谁可以编辑此范围」,添加允许编辑的用户,同时确保保护范围覆盖形状所在区域,排除需要用户编辑的单元格范围。

二、禁止用户修改形状绑定的脚本

  • 限制脚本编辑权限:
    1. 在脚本编辑器右上角点击「共享」,仅添加你(所有者)或指定管理员为脚本编辑者,其他用户设为无权限或仅查看权限。
  • 阻断用户修改形状的脚本关联:
    1. 结合上述setSelectable(false)设置,用户无法选中形状,自然无法右键查看或修改绑定的脚本。
    2. 若需保留形状可点击执行脚本的功能,可在脚本中添加验证逻辑,确保只有预设函数能被触发,同时通过Sheet保护设置禁止用户修改形状的交互属性。

额外提示

  • 如果用户仅需编辑单元格内容,可将Sheet共享权限设为「评论者」,但需搭配上述脚本锁定形状,避免用户通过评论权限间接操作形状。
  • 新增形状后,需重新运行lockShapes函数完成锁定。

内容的提问来源于stack exchange,提问作者mdian mohamed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 14:31:05