【问题标题】:Google app script trigger based on time is not working基于时间的谷歌应用脚​​本触发器不起作用
【发布时间】:2019-11-09 11:49:25
【问题描述】:

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

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

【问题讨论】:

    标签: datatrigger


    【解决方案1】:

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

    应用程序脚本可以在用户处于上下文而不是触发器时激活工作表。我编辑了您的代码以获取工作表而不是激活它们。它现在正在使用基于时间的触发器为我执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-13
      • 1970-01-01
      相关资源
      最近更新 更多