如何防止用户移动Google表格上的形状或更改为

问题描述 投票:0回答:1

我有谷歌表用于添加、更新和删除患者的一些信息,我想防止用户更改这些形状的指定脚本并防止他们更改它们的位置

我想阻止用户更改这些形状的指定脚本并阻止他们更改它们的位置

google-apps-script google-sheets driver google-drive-realtime-api
1个回答
0
投票

我不确定是否可以限制在工作表上插入的图形/形状的编辑,但是有一个类似的脚本意外未分配的问题,我创建了一个可以分配脚本的函数,然后根据需要经常触发,例如每天都有我。

该功能的当前假设是每张纸只有 1 个图形/形状,这是通过

var num = 0
选择第一个图形来选择的。如果每张纸有多个,则必须对此进行调整。

function setDrawings() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var num = 0;

  function updateSheetActions(sheetName, scriptName) {
    var sheet = ss.getSheetByName(sheetName);
    var drawings = sheet.getDrawings();
    var beforeAction = drawings[num].getOnAction();

    if (beforeAction !== scriptName) {
      drawings[num].setOnAction(scriptName);
    }
  }

  var sheetsAndScripts = [
    { sheetName: "Sheet1", scriptName: "script1" },
    { sheetName: "Sheet2", scriptName: "script2" }
  ];

  sheetsAndScripts.forEach(function (item) {
    updateSheetActions(item.sheetName, item.scriptName);
  });
}

您需要使用相关的工作表和脚本调整

Sheet1
/
Script1
等。

参考:

绘画班

获取图纸

设置动作

© www.soinside.com 2019 - 2024. All rights reserved.