Триггер сценария приложения Google на основе времени не работает - PullRequest
1 голос
/ 27 июня 2019

У меня есть скрипт приложения Google, который копирует некоторые данные с одного листа на другой.Я хотел бы установить триггер, который запускал бы мой скрипт каждый день.Поэтому я создал триггер, основанный на времени, но он не работает.Однако скрипт работает, когда я делаю это вручную.

function Agregation () {
    var spreadsheet = SpreadsheetApp.getActive();
    var lr = spreadsheet.getLastRow();
    spreadsheet.getRange('A1').activate();
    Logger.log(lr);
    spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Données'), true);
    spreadsheet.getRange('A2:E7').activate();
    spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Classement'), true);
    spreadsheet.getRange('\'Données\'!A2:E7').copyTo(spreadsheet.getRange('A0'+(lr+1)), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};

1 Ответ

0 голосов
/ 27 июня 2019

Margot, попробуйте следующий код.

function agregation () {
  var spreadsheet = SpreadsheetApp.getActive();
  var ss = spreadsheet.getSheetByName('Données');
  var ts = spreadsheet.getSheetByName('Classement');
  var lr = ts.getLastRow();
  Logger.log(lr);
  ss.getRange('A2:E7').copyTo(ts.getRange('A'+(lr+1)), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};

Сценарий приложения может активировать лист, когда пользователь находится в контексте, но не из триггера. Я отредактировал твой код, чтобы получить листы вместо того, чтобы активировать их. Теперь он выполняется для меня с использованием временного триггера.

...