После запуска скрипта по триггеру выдает #ОШИБКА! (Google Apps Script)
У меня есть код ниже. Я создал триггер для этой функции. Тип срабатывания по минутам - каждые 15 минут. Ячейка «A1» — это число, которое должно быть скопировано в столбец G по триггеру. Когда он запускается в результате, я вижу частые #ОШИБКА!. Мне нужна помощь с этим.
Может быть, эта ошибка #ОШИБКА! появляется после запуска функции удаления?
Пример файла для
function hourChart() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("PvD (auto)");
var value = sheet.getRange("A1").getValue();
var range = sheet.getRange("G1:G").getValues();
var lastRow = null;
var i = 0;
while(i < range.length) {
if (range[i][0] !== "") {
i++
} else {
lastRow = i +1;
break;
}
}
sheet.getRange(`G${lastRow}`).setValue(value)
}
function hourChartDelete() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("PvD (auto)");
var range = sheet.getRange("G2:G");
range.clear();
}
У триггера при выполнении выдает такую ошибку:
Exception: Сервису "Таблицы" недоступен документ 1OpsHNBbn7W2cFMuZBQ5XTD_tqzGqYuwu9ejBVTpET_4.
at hourChart(HourChart:4:36)
Что это значит?
Ответы (1 шт):
Автор решения: contributorpw
→ Ссылка
Попробуйте добавить следующую строку в начало функции
function hourChart() {
SpreadsheetApp.flush();
Или рассчитать случайное значение, добавив в листинг
function randomIntFromInterval(min, max) { // min and max included
return Math.floor(Math.random() * (max - min + 1) + min)
}
и в вашей функции замените
var value = sheet.getRange("A1").getValue();
на
var value = randomIntFromInterval(1, 100);