【问题标题】:Running Script through image in Locked gSheet通过锁定 gSheet 中的图像运行脚本
【发布时间】:2020-12-03 18:06:25
【问题描述】:

尝试运行由插入受保护工作表中的图像触发的脚本。该工作表由多个用户共享。 o仅允许作者编辑;所有其他用户都通过setDomainEdit(false) 被锁定,除了范围('a1:b3')。

当用户点击图片时,会调用一个脚本来执行(简单的 msgbox 函数 --> Browser.msgBox("Clicked");),

Google 表格返回错误消息:

您试图编辑受保护的单元格或对象时出现异常。如果您需要编辑,请联系电子表格所有者以取消保护。

该图像是插入在不受保护范围('a1:b3')中的单元格上方的 .jpg。

问题:
有什么方法可以取消保护/解锁图像(在受保护的工作表中)以使脚本在被所有用户单击时运行?

(如有必要,可以将图像替换为谷歌“绘图”或任何其他可运行所需脚本的可点击对象/可以修改其属性以使脚本能够运行——但工作表必须保持锁定状态) .

【问题讨论】:

    标签: image google-apps-script google-sheets protection


    【解决方案1】:

    为了任何有相同问题/问题(最初发布)的人的利益,Google 确认通过单击锁定工作表中的形状/图像来执行脚本的功能可通过以下步骤获得:

    (1) Create a Spreadsheet as User A;
    (2) Add an image over range (for example A1:A4)
    (3) Assign a script to the image  
    (4) Run script on Sheet1 to protect it, except for range A1:A4;
    (5) Share the Spreadsheet with another user (User B) with Editor access;
    (6) User B should  be able to click the image/ run the script
    

    对于提到的其余功能,WebApp(以我的身份执行)和可安装的触发器就可以了。

    【讨论】:

      【解决方案2】:

      没有。

      以上是因为可以为工作表和范围设置 Google 表格保护,但其中任何一个选项都包含一种方法,即在放置的工作表/范围受到保护时保持绘图“可点击”。

      考虑使用自定义菜单。您可以使用它来显示对话框/侧边栏。

      【讨论】:

      • 嗨鲁本——感谢您的及时回复。我尝试添加一个自定义 Ui 菜单,该菜单仅针对特定工作表中的特定用户显示 - 但是,运行从 Ui 菜单调用的脚本的问题再次与工作表权限发生冲突 - 工作表已被锁定,除了选择单元格。为了避免这种情况,我尝试为个人添加(临时)addEditor 权限——但这似乎也不起作用。后续问题:有没有办法以编程方式让用户暂时放宽工作表权限,以便他们可以运行通过 Ui 菜单调用的脚本?
      • 只有电子表格所有者可以“放宽工作表权限”。这可以通过使用“以我身份执行”(电子表格所有者)的 Google Apps Script Web 应用程序来执行诸如“放宽工作表权限”之类的操作来完成。为了选择“正确的解决方案”,需要了解您的“解决方案”的几件事
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-16
      • 2010-12-22
      • 2010-09-21
      • 2018-04-26
      • 2018-09-21
      • 2022-12-01
      相关资源
      最近更新 更多