从动态别名id发送邮件

时间:2017-07-11 11:06:23

标签: google-apps-script

查找从动态别名id发送邮件的解决方案。

从alias id发送邮件,我有多个别名id(在帐户下添加为发送邮件)

      {from:"alias@domain.com"});____________ Is working fine 

但是我在我的工作表中有动态发件人列表,因此想从工作表中提取id

使用“{from:row [3]}”;但它不起作用。 请帮我解决这个问题。

function emailNotification() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var lastRow = sheet.getLastRow();
  var row = sheet.getActiveRange().getRowIndex();
  var toNotify = 'xyz@abc.com';
  var submitter = sheet.getRange(row, getColIndexByName("Email Address")).getValue();
  var subject = sheet.getRange(lastRow, getColIndexByName("Subject")).getValue();
  var description = sheet.getRange(lastRow, getColIndexByName("Description")).getValue();


  GmailApp.sendEmail(toNotify,+ lastRow + " " + subject,
                    "\n\nDESCRIPTION OF ISSUE:\n" + description +
                    "\n\nSubmitter: " + submitter + ",          
                   {from:row[3]});
}


function getColIndexByName(colName) {
  var sheet = SpreadsheetApp.getActiveSheet();
  var numColumns = sheet.getLastColumn();
  var row = sheet.getRange(1, 1, 1, numColumns).getValues();
  for (i in row[0]) {
    var name = row[0][i];
    if (name == colName) {
      return parseInt(i) + 1;
    }
  }
  return -1;
}

1 个答案:

答案 0 :(得分:0)

代码的第4行将行设置为活动Range

的索引
var row = sheet.getActiveRange().getRowIndex();

这是一个整数而不是一个对象。您是否想要指定特定的细胞?或者您想要获取整个范围或指定活动工作表顶部和最后一行之间的范围?

此外,您的sendMail()包含主题行中的lastRow,这是您想要的吗?