В рабочей таблице есть два листа. Нужно, чтобы после того, как во втором столбце прописывается слово “доставлено”, строка переносилась на второй лист и удалялась с первого листа.
Пименили
скрипт:
let ss = SpreadsheetApp.getActiveSpreadsheet();
let transitSheet = ss.getSheetByName('В транзите');
let dostavkaSheet = ss.getSheetByName('Доставлено');
function onEdit(e) {
let cell = e.range;
if (cell.getSheet().getSheetName() === transitSheet.getSheetName()){
if (cell.getValue() === 'доставлено'){
transitSheet.getRange(cell.getRow(), 1, 1, transitSheet.getLastColumn()).copyTo(dostavkaSheet.getRange(dostavkaSheet.getLastRow() + 1, 1));
transitSheet.deleteRow(cell.getRow());
}
}
}
Тестировали скрипт на
скопированном фрагменте рабочей таблицы в другой таблице, он срабатывал.
Перенесли скрипт в рабочую таблицу, не срабатывает.
При первом приближении разница в
таблицах только в количестве человек, которые с ними работают.
Если запускать скрипт в окне редактирования скрипта, ошибка одинаковая в обоих
скриптах в обоих таблицах: TypeError: Cannot read property 'range' of undefined onEdit @ Код.gs:5.
Вопрос: Влияют ли настройки доступа на работу скрипта? Что нужно посмотреть, чтобы понять, почему скрипт не отрабатывает.