使用按钮从谷歌电子表格发送HTML电子邮件

时间:2016-09-22 15:24:30

标签: google-apps-script google-sheets

我是新的堆栈溢出,我正在寻找一些建议和一些我一直在努力的谷歌电子表格的指导。

可以在

找到它的演示

https://docs.google.com/spreadsheets/d/1t9WfcG_1_mAavpN0l3v58JdD04Y1lL3PhAEoTUkq0Z4/edit?usp=sharing

基本上,它的要点是我需要以下内容。

顶部工具栏中的sendEmail按钮,将以特定颜色向活动页面上的任何电子邮件发送html格式的电子邮件。

基本上这是允许我以群组和颜色状态向客户发送提醒。目前,我必须使用固定响应单独邮寄每个客户端,这非常耗时。

到目前为止,我使用以下脚本作为基础,我可以成功发送电子邮件,但如果电子邮件字段为空,我会遇到错误。我正在寻找俯瞰空白字段并继续搜索电子邮件地址。此外,我只能找到一个活动工作表的模板,但需要它找到另一个工作表的模板并使用它。最后,当我尝试添加HTML时,脚本成功获取模板,但将其作为纯文本发送,而不是以HTML格式发送。

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  // First row of data to process
  var numRows = 100;   // Number of rows to process
  // Fetch the range of cells A2:B3
  var dataRange = sheet.getRange(startRow, 1, numRows, 100)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[8];  // Eight column
    var message = row[15];       // Fifteenth column
    var subject = "Welcome To Phorest";
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

期待与能够帮助我解决所有问题的人交谈,并在此过程中为我节省一些数据。

赞赏。

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式发送包含HTML的电子邮件:

var email = "some@email.com";
var subject = "Hello!";
var html = '<p> What is your favourite fruit? </p> <br>' +
           '<select>' +
           '<option value="apple">Apple</option>' +
           '<option value="orange">Orange</option>' +
           '</select> ';
MailApp.sendEmail({
      to: email,
      subject: subject,
      htmlBody: html
      });