0

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

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

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!');
}
4

1 回答 1

0

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

于 2012-07-13T20:21:55.713 回答