Доступ к защищенному диапазону через скрипт Google - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь создать функцию, где кто-то помещает что-то в одну ячейку, дата этой операции идет в другую ячейку.Итак, я сделал это:

function onEdit(e) {
var data = new Date();
if (
e.source.getSheetName() == "sheet" &&
e.range.columnStart == 7 &&
e.range.columnEnd == 7 
//e.range.rowStart >= 2 &&
//e.range.rowEnd <= 5000
) {

var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("PRODUKCJA MODELE");
var protections = ss.getProtections(SpreadsheetApp.ProtectionType.RANGE);

var range = e.range.getValue();

var cell = e.range.getRow();
if(range)
{
  ss.getRange(cell, 2).setValue(new Date());
}    
else
{
  ss.getRange(cell, 2).setValue("");
}
}

}

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

Заранее спасибо.

1 Ответ

0 голосов
/ 19 февраля 2019

Проблема была решена.Устанавливаемые триггеры сделали свое дело.Все, что мне нужно было сделать, это установить триггер с событием и установить «Править».

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