Есть ли способ запланировать обновление автономного документа Google Sheets с помощью apps script?

#google-apps-script #google-sheets #triggers

#google-apps-script #google-sheets #триггеры

Вопрос:

Используя Google Apps Script, я хотел бы запланировать обновление данных в Google Sheets, когда документ не открыт.

Я могу создать триггер на основе времени (как показано ниже), но он не привязан к конкретной электронной таблице. Есть ли какой-либо способ создать триггер на основе времени, который привязан к определенной таблице таблиц?

 const trigger = ScriptApp.newTrigger('onTriggerTimeBased')
    .timeBased()
    .onMonthDay(1)
    .everyHours(1)
    .create();
  

Комментарии:

1. Что вы подразумеваете под » не прикрепленным «?

Ответ №1:

'onTriggerTimeBased' Строка в функции — это имя функции, которая будет запущена после введенного вами времени, чтобы вы могли получить электронную таблицу в функции, используя SpreadsheetApp.openById(ssId) where ssId — переменная, которая хранит строковое представление идентификатора электронной таблицы. Идентификатор таблицы — это строка, которая идет после https://docs.google.com/spreadsheets/d/ URL-адреса электронной таблицы.

Комментарии:

1. Спасибо. Похоже, ответ отрицательный, вы не можете прикрепить триггер к определенной электронной таблице. При срабатывании триггера необходимо было бы получить ssId из базы данных или где-то еще, где он хранился постоянно, правильно?

2. Возможно, я не понял, что вы имели в виду, прикрепив триггер к определенной электронной таблице. Чтобы управлять электронной таблицей в Google app Script, вам нужно, чтобы она была активной или откуда-то получала его идентификатор. Можете ли вы подробнее рассказать о том, что вы пытаетесь сделать?