Задержка в редакторе скриптов Google (для таблиц Google) - PullRequest
0 голосов
/ 07 марта 2019

Мне просто любопытно, есть ли способ обойти эту ошибку, которую я продолжаю иметь.У меня есть документ, в котором несколько человек заполняют информацию, и требуют, чтобы он заполнил ячейку рядом с ней своим именем пользователя.Приведенный ниже код выглядит следующим образом (имея в виду, я хочу, чтобы это вступило в силу только в столбцах J, H и F):

    function onEdit() {
var s = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
       var r = s.getActiveCell();
       var username = Session.getActiveUser().getUsername();
       if (r.getColumn() == 10) { //checks the J column
           var nextCell = r.offset(0, 1);
           Logger.log(nextCell.getValue());
               nextCell.setValue(username);
       }
         if (r.getColumn() == 8) { //checks the H column
           var nextCell = r.offset(0, 1);
           Logger.log(nextCell.getValue());
               nextCell.setValue(username);
       }
         if (r.getColumn() == 6) { //checks the F column
           var nextCell = r.offset(0, 1);
           Logger.log(nextCell.getValue());
               nextCell.setValue(username);
       }
   }

Кажется, что сам этот код работает нормально, но мне кажется, что проблема в этомобнаружение состоит в том, что если слишком много ячеек обновляется слишком быстро, оно не будет загружено.

Example of the problem

Знаете ли вы, есть ли способ для сценарияработать более эффективно?Заранее спасибо

1 Ответ

0 голосов
/ 09 марта 2019

Попробуйте это:

function onEdit(e) {  
  if (e.range.columnStart==10 || e.range.columnStart==8 || e.range.columnStart==6) { 
    e.range.offset(0, 1).setValue(Session.getActiveUser().getUsername());
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...