Ответ:
Для запуска сценария DocumentApp
при редактировании электронной таблицы необходимо использовать устанавливаемый триггер On edit
, прикрепленный к электронной таблице.
Дополнительная информация:
Согласно документации по простым триггерам, существуют некоторые ограничения, которые необходимо учитывать. В частности:
Они могут изменить файл, к которому они привязаны, но не могут получить доступ к другим файлам, поскольку для этого потребуется авторизация.
В результате onEdit(e)
Функция триггера не может быть использована. Тем не менее, существует устанавливаемый триггер, который можно создать с настройками, настроенными так, чтобы он мог срабатывать при редактировании.
Код:
С помощью следующей функции в сценарии, связанной с файлом электронной таблицы:
function updateDocument() {
var doc = DocumentApp.openById('DOCUMENT_ID');
// here you can put your code that edits the document in the way you want.
}
Вы можете создать устанавливаемый триггер, который запускается при редактировании электронной таблицы. Однако вам нужно будет выполнить код хотя бы один раз перед настройкой триггера - это потому, что DocumentApp
требуется авторизация и вам необходимо предоставить его!
Настройка устанавливаемого триггера:
С установленным кодом вы можете создать устанавливаемый триггер, выполнив следующие шаги:
В представлении редактора сценариев приложений для связанного сценария электронной таблицы следуйте по пути Edit > Current project's triggers
. Это откроет триггеры для проекта в новой вкладке или окне.
В левом нижнем углу нажмите кнопку + Add Trigger
, чтобы вызвать модальный Add Trigger
. Отсюда установите триггер со следующими свойствами:
- Выберите, какую функцию запускать:
updateDocument
- Выберите, какое развертывание должно выполняться:
Head
- Выберите источник события:
From spreadsheet
- Выберите тип события:
On edit
И нажмите Save
. Это настроит триггер таким образом, что функция редактирования документа будет запускаться при каждом редактировании электронной таблицы.
Надеюсь, это будет полезно для вас!
Ссылки: