在Google电子表格发送电子邮件时,使用脚本编辑器创建时间戳

时间:2012-07-13 18:24:52

标签: google-apps-script

我目前正通过RSS Feed将数据接收到我的电子表格中。我有一个脚本(下面),我希望在时间触发器(每分钟)上运行以检查数据,然后如果数据符合某些标准则依次发送电子邮件。

问题:在发送第一封电子邮件之后,如果已经发送了该特定数据行的电子邮件,我想在脚本中创建一个检查(时间戳?)的系统。这是最好的方法吗?我该怎么做?脚本在下面。

function sendEmail(email_address, email_subject, email_message) {
  MailApp.sendEmail(email_address, email_subject, email_message);
}




function test_sendEmail() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var cell = sheet.setActiveCell('A2');
  var criterion_cutoff = 5;
  var i = 0;
  var addr;
  var subj;
  var msg;
  do {
    addr = cell.offset(i,0).getValue();
    subj = cell.offset(i,1).getValue();
    msg = cell.offset(i,2).getValue();
    criterion = cell.offset(i,3).getValue();

    if(criterion < criterion_cutoff) {
      sendEmail(addr,subj,msg);
      Browser.msgBox('Sending email to: ' + addr);
    }
    i++;
  } while( cell.offset(i, 0).getValue().length > 0 )

  Browser.msgBox('Done!');
}

1 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您需要一些方法来标记电子表格中您已发送电子邮件的行,以便您不会发送重复项。如果是这样,那么本教程将展示一种方法:https://developers.google.com/apps-script/articles/sending_emails#section2