微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

谷歌工作表的编辑插入后保护行

如何解决谷歌工作表的编辑插入后保护行

我有以下问题。我需要与将成为此工作表编辑者的其他人共享一个 Google 工作表,但他们应该无法修改任何内容,而不仅仅是添加新行。添加新行后,单击按钮检查最后一行的所有单元格是否已填充:如果未填充,则会显示错误消息。如果是,最后一行,即刚刚创建的行,应该以这样的方式受到保护,即使是填写它的人也不能再修改它。我试图保护最后一行的相应范围,但它不起作用。我开始认为我想要的可能是不可能的:工作表的编辑器可以在工作表的范围内设置保护吗?这不是专门授予该工作表的管理员吗?有解决办法吗?

这是我的代码

function verifyData() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName("Presenze");
  var rows = sheet.getDatarange().getValues();
  var lastRowIndex = sheet.getLastRow();
  var lastRowValues = rows[lastRowIndex-1];
  var n = 0;
  for(i = 0; i < 8; i++) {
    var value = lastRowValues[i];
    if(value == "" || value == " " || value == null)
      n++;       
  }
  var message;
  if(n == 1)
    message = "Attention: one cell has not been filled out!";
  else if (n >= 2)
    message = "Attention:" + n.toString() + " cells have not been filled out!";
  else {  
    var range = sheet.getRange("A"+lastRowIndex.toString()+":H"+lastRowIndex.toString());
    var protection = range.protect().setDescription("Sample protected range");
    message = "Data inserted is complete!";
  } 
  SpreadsheetApp.getUi().alert(message);  
};

任何帮助将不胜感激!

提前致谢, 米海

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。