Google 基于时间的应用脚本触发器不起作用

Google app script trigger based on time is not working

我有一个 google 应用程序脚本,可以将一些数据从一个 sheet 复制到另一个。我想设置一个触发器,每天启动我的脚本。所以我创建了一个基于时间的触发器,但它不起作用。但是,当我手动执行时,该脚本有效。

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);
};

玛格特,试试下面的代码。

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);
};

Apps 脚本可以在用户处于上下文而非触发器时激活 sheet。我编辑了您的代码以获取 sheet 而不是激活它们。它现在正在使用 time-based 触发器为我执行。