我可以按特定顺序触发Google表格脚本吗?

时间:2017-12-14 04:56:59

标签: google-apps-script google-sheets mailchimp-api-v3.0

我改变了从MailChimp获取数据的脚本,然后将其显示在Google表格中。但是,数据是以随机顺序出现的,而不是按顺序排列(例如,通过"广告系列日期")并且还会创建重复数据。

所以我添加了两个

的脚本
  1. 清除以前的数据
  2. 按日期顺序排序
  3. 我想按特定顺序运行这些脚本,所以:

    1. 细胞范围清晰
    2. 从mailchimp
    3. 导入数据
    4. 数据按日期顺序重新排列
    5. 理想情况下,我希望每15分钟刷新一次这样的数据。最好的方法是什么?我可以发布我的代码,但它非常臃肿和混乱。

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,我通过创建一个"父母"按顺序运行所有其他功能的函数。为了提高稳健性,我还提供了一个简单的日志记录功能,可以将其记录到工作表中,这样我就可以很容易地看到函数已经运行。但是,如果您每15分钟运行一次,这很快就会失控,那么您可以将日志记录分区,或使用内置的记录器(see reference here

function runAllFunctions() {
  logit("Clearing data");
  clearCellRange();
  logit("Data Cleared. Importing MailChimp Data");
  importMailchimpData();
  logit("MailChimp data imported. Reordering data.");
  orderData();
  logit("Data reordered. Update complete");
}
;

function logit(message) {
  var logBook = SpreadsheetApp.openById("<insert ID here>")
  var logSheet = logBook.getSheetByName("Log")
  logSheet.appendRow([new Date(),message]);
};