Google Sheet Script: ячейка автоматической защиты после обновления данных в ячейке не работает - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть скрипт для защиты ячейки после данных в любой ячейке в диапазоне («A: A»), Sheet1 обновляется

  1. Во-первых, он работал отлично, но теперь это не так защитить редактор от редактирования этой ячейки

  2. Теперь, после обновления данных в ячейке, будет запущен скрипт для защиты ячейки, но он не удалит редактор для «Только просмотр». Он установил разрешение, позволяющее редактору и владельцу редактировать ячейку. В первый раз он установил разрешение только для владельца и других редакторов: «Только просмотр»

  3. Триггер одинаков. Он запускается, когда «При редактировании»

  4. Проблема: Скрипт не удаляет редактор для «Только для просмотра» в защите, он по-прежнему сохраняет редактор в списке разрешений. Пожалуйста, помогите мне соответственно.

function protectcell(e) {
  var range = e.range;
  if (range.getSheet().getName() != "Sheet1") return;
  if (range.getWidth() != 1 || range.getHeight() != 1) return;
  if (range.getColumn() != 1 || range.getRow() < 2) return;
  if (!e.value) return;

  var timeZone = Session.getScriptTimeZone();
  var stringDate = Utilities.formatDate(new Date(), timeZone, 'dd/MM/yy HH:mm');
  var description = 'Protected on ' + stringDate;
  var protection = range.protect().setDescription(description);
  protection.removeEditors(protection.getEditors());
  if (protection.canDomainEdit()) protection.setDomainEdit(false);
}

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