Как создать таблицу автоматической проверки ячеек? - PullRequest
0 голосов
/ 13 февраля 2020

Я создал небольшой код для условно защищенной ячейки с помощью редактора сценариев в электронной таблице Google. Назначение кода - разрешить ввод в другую ячейку только после заполнения ячейки над ней. Например, вы можете вводить данные от B3 до B13 только при заполнении B2. Я написал некоторый код там, и я использовал триггер для проекта. Но кое-что, как код не работает для меня, а также есть много ошибок, записанных в триггере. Я сделал 2 триггера для функции, 1 - триггер при открытии, а другой - триггер при изменениях. Ищу советы.

    function cellcheck() {

  // Protect range A1:B10, then remove all other users from the list of editors.
var ss = SpreadsheetApp.getActive();
  var column = "B";
  var lastrow = ss.getLastRow();

// Ensure the current user is an editor before removing others. Otherwise, if the user's edit
// permission comes from a group, the script will throw an exception upon removing the group.


  for (i=2;i<=lastrow;i++){
       var checking = ss.getRange(i,2).getValue();
    if (checking == "") { 
      var FBlock = i+10;
     // var LBlock = i+10;
      var range = ss.getRange(column + FBlock + ':'+column + lastrow);
      var protection = range.protect().setDescription('Sample protected range');
   }
    else {
      var lastUnblock= i+10
      var unprotected = ss.getRange([column + i + ':'+column + lastUnblock])
      protection.setUnprotectedRanges([unprotected]);
    }

     var me = Session.getEffectiveUser();
    protection.addEditor(me);
    protection.removeEditors(protection.getEditors());
    if (protection.canDomainEdit()) {
      protection.setDomainEdit(false);
    }

  }

}

изображение для моего триггера проекта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...