从文档绑定的Google Apps脚本在计时器上运行一个函数

时间:2017-12-20 20:47:32

标签: google-apps-script google-sheets

因此,我的任务是定期处理Google表格上的一些数据。我想我会创建一个函数来每15分钟处理一次这个过程。作为测试,我创建了一个运行两个命令的排序函数:

function sort()
{
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.getRange(2, 1, sheet.getMaxRows()-1, 
  sheet.getMaxColumns()-2).sort([{column: 1, ascending: false}]);
}

我已经手动测试过,它运行正常。我在apps-script项目中创建了一个触发器,每15分钟运行一次该函数。虽然在一小时后检查(并且在首先放置了一些不合适的东西之后;-)),但什么都没发生。我是否可以设置触发器以无人值守的方式运行受文档约束的应用程序脚本函数,还是必须打开文档?

1 个答案:

答案 0 :(得分:2)

getActiveSheet并不适用于时间驱动的触发脚本,因为没有用户可以使工作表处于活动状态,因此您必须通过另一种方式替换此方法以设置要使用的工作表

您可以尝试使用getSheetByName。