Выполняйте onEdit только в том случае, если пользователи выполняют редактирование в заданном диапазоне c - PullRequest
0 голосов
/ 28 марта 2020

Как я могу запустить onEdit, только когда пользователи вносят изменения с указанным диапазоном c в Google App Script?

1 Ответ

0 голосов
/ 30 марта 2020

Вы не можете создать onEdit, который срабатывает только при редактировании определенных ячеек, но вы можете поместить условие в начало вашей функции, чтобы проверить, являются ли отредактированные ячейки частью диапазона, из которого вы хотите отслеживать изменения. Вы можете сделать это с использованием объекта события .

Например, вы можете сделать это (проверьте встроенные комментарии):

function onEdit(e) {
  // Information from edited range:
  var range = e.range;
  var editedRow = range.getRow();
  var editedCol = range.getColumn();
  var editedSheet = range.getSheet();
  // Range to track (please change accordingly):
  var sheetName = "Sheet To Track";
  var minCol = 3;
  var maxCol = 7;
  var minRow = 2;
  var maxRow = 5;
  // Check that edited sheet, column and row are the ones you want to track changes from:
  if (editedSheet.getName() === sheetName && editedRow >= minRow && editedRow <= maxRow && editedCol >= minCol && editedCol <= maxCol) {
    // Actions to perform if edited range is correct
  }
}

Функция выше сначала проверит, является ли отредактированный диапазон (1) между столбцами 3 и 7, (2) между строками 2 и 5 и (3) на листе с именем Sheet To Track.

Ссылка:

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