在SendEmail事件中指定电子邮件地址

时间:2015-08-17 18:28:36

标签: javascript email

我已经完成了对Google SendEmail教程的研究以及本网站上提供的一些修改,以便根据数据匹配标准激活电子邮件。

我想要做的是,如果数据与当前日期不匹配,则发送电子邮件,而不是在此网站上发布的原始代码(如果匹配的话)。

我相信我已正确设置所有内容,但我不想使用电子表格中的电子邮件地址,我希望每次都能将电子邮件转到特定的电子邮件地址,并希望能够将该电子邮件地址输入代码。

我已经将触发器设置为每天运行的定时事件,只需要解决电子邮件地址部分中的电子邮件地址,然后我就可以测试了。 如果有人看到我设置的其他任何你认为不起作用的请告诉我,下面是我目前设置的代码。

由于

function sendEmail() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = sheet.getLastRow()-1;   // Number of rows to process
  // Fetch the range of cells A2:B3
  var dataRange = sheet.getRange(startRow, 1, numRows, sheet.getLastColumn());
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  Logger.log(data)

  for (i in data) {
    var row = data[i];
    var date = new Date();
    var sheetDate = new Date(row[26]);
    Sdate=Utilities.formatDate(date,'GMT-0700','yyyy:MM:dd')
    SsheetDate=Utilities.formatDate(sheetDate,'GMT-0700', 'yyyy:MM:dd')
    Logger.log(Sdate+' =? '+SsheetDate)
    if (Sdate > SsheetDate){
      var emailAddress = "myemail@testemail.com";  
      var subject = "Data Not Updated";
      MailApp.sendEmail(emailAddress, subject);
     Logger.log('SENT :'+emailAddress+'  '+subject)
    }    
  }
}

1 个答案:

答案 0 :(得分:0)

我相信我能够弄清楚如何使这项工作:如果有人发现此代码存在任何潜在问题,请告诉我们

function sendEmail() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = sheet.getLastRow()-1;   // Number of rows to process
  // Fetch the range of cells A2:B3
  var dataRange = sheet.getRange(startRow, 1, numRows, sheet.getLastColumn());
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  var youremail     = "Randy.Bach@boydgroup.com";
  Logger.log(data)

  for (i in data) {
    var row = data[i];
    var date = new Date();
    var sheetDate = new Date(row[26]);
    Sdate=Utilities.formatDate(date,'GMT-0700','yyyy:MM:dd')
    SsheetDate=Utilities.formatDate(sheetDate,'GMT-0700', 'yyyy:MM:dd')
    Logger.log(Sdate+' =? '+SsheetDate)
    if (Sdate > SsheetDate){
      var emailaddress = youremail; 
      var subject = "Data Not Updated";
      var message = "Data failed to load";
    MailApp.sendEmail(emailaddress, subject, message);
     Logger.log('SENT :'+emailaddress+'  '+subject+' '+message)
    }    
  }
}