尝试按照提到的日期和时间发送电子邮件

时间:2016-04-22 21:44:33

标签: google-apps-script

我正在尝试创建一个电子表格自动化创建谷歌脚本,该脚本将电子邮件发送给从电子表格中获取值的特定人员。我有一个专栏提到了提及日期和时间。我想按照预定日期发送电子邮件,有没有人知道我的功能如何提及

+----------------------+---------------+-------------+-------------+
+       Schedule       +    Email      +    Subject  +    Message  +
+----------------------+---------------+-------------+-------------+
+ 04/22/2015 18:00:00  + abc@abc.com   +      Hi     +      Hi     +
+----------------------+---------------+-------------+-------------+
+ 04/25/2015 14:00:00  + def@gmail.com +      Hi     +      Hi     +
+----------------------+---------------+-------------+-------------+

function sendEmails() {
for (k = programFirstRow; k < totalProgramRows + 1; k++)
  {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = 2;   // Number of rows to process
  // Fetch the range of cells A2:B3
  var sendDate = SendSheet.getRange("A"+k).getValues();
  var emailAddress = SendSheet.getRange("B"+k).getValues();
  var Subject = SendSheet.getRange("C"+k).getValues();
  var message = SendSheet.getRange("D"+k).getValues();
  // Fetch values for each row in the Range.
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

1 个答案:

答案 0 :(得分:0)

您可以通过编程方式设置可安装触发器:Reference

具体来说,您可以通过编程方式安装基于时间的触发器:Reference

示例:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
}

您可以遍历工作表并为每封电子邮件创建基于时间的触发器。但是,这些只有15分钟的时间粒度。因此它将在指定的触发时间之前或之后15分钟执行最多15次。

我不会为你写一个完整的例子,因为搞清楚是学习过程的一部分。链接的文档足以让您入门。