tgoop.com/google_sheets/1548
Create:
Last Update:
Last Update:
Запускаем скрипт ровно в 55 минут
Друзья, мне написал Владислав - у него есть скрипт и он хочет его запускать каждый час в конкретной время (например, в 55 минут каждого часа)
Мы решили помочь и написали скрипт, который
1) запускает нужный нам скрипт;
2) далее проверяет, есть ли скрипт в триггерах проекта, если есть - удаляет этот триггер
3) далее создаёт новый триггер, на следующий час, чтобы тот запустился в введенные в коде минуты (аргумент mins)
function googleSheets() {
setDate(); // запускаем нашу функцию
let fName = arguments.callee.name; // получаем имя текущей функции
let triggers = ScriptApp.getProjectTriggers(); // удаляем триггер с текущей функцией, если он есть
for (let i = 0; i < triggers.length; i++) {
let trigger = triggers[i];
if (trigger.getHandlerFunction() == fName) {
ScriptApp.deleteTrigger(triggers[i]);
};
};
let dt = new Date(); //рассчитываем время для запуска функции в следующий раз
let h = dt.getHours();
let mins = 44; //устанавливаем триггер на следующий час на это время
let newDt = new Date(dt.setHours(h, mins, 0) + 60 * 60 * 1000);
Logger.log(newDt);
ScriptApp.newTrigger(fName) // ставим функцию на триггер
.timeBased()
.at(newDt)
.create();
};
function setDate() {
const ss = SpreadsheetApp.getActive();
const sh = ss.getSheets()[0];
sh.getRange((sh.getLastRow() || 0) + 1, 1)
.setValue(new Date());
};
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
BY Google Таблицы
Share with your friend now:
tgoop.com/google_sheets/1548