【问题标题】:Google Apps Script Send Email via SpreadsheetGoogle Apps 脚本通过电子表格发送电子邮件
【发布时间】:2020-12-15 12:52:50
【问题描述】:

我正在尝试创建一个可以为我发送电子邮件的 Google 应用程序脚本,但我有点卡住了。我四处寻找无济于事。我希望这样做的方法是发送一封电子邮件,其中包含一个永远不会更改的抄送列表,并让密件抄送变量引用电子表格上的一列,因为该列每周更改。

任何帮助将不胜感激。我在下面的尝试会产生错误,因为第 15 16 行不正确。

function sendEmails() {
 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:C
 var dataRange = sheet.getRange(startRow, 1, numRows, 2);
 // Fetch values for each row in the Range.
 var data = dataRange.getValues();
 for (var i in data) {
   var row = data[i];
   var emailAddress = row[0]; // First column, includes Will.Henderson.
   var message = 'test';
   var subject = 'testy pants'
   var options = {
     cc = row[1]; // Second column is the listserv that never changes. You mad add folks here on occasion
     bcc = row[2]; // Third column include managers that change each week to bcc 
   }
  MailApp.sendEmail(emailAddress, subject, message);
 }
}

【问题讨论】:

    标签: google-apps-script google-sheets gmail-api


    【解决方案1】:

    解释:你们很亲密。 json 对象options 应该这样定义:

    var options = {
        cc : row[1], // Second column is the listserv that never changes. You mad add folks here on occasion
        bcc : row[2] // Third column include managers that change each week to bcc 
    }
    

    然后你就可以这样发送邮件了:

    MailApp.sendEmail(emailAddress, subject, message, options);
    

    完整解决方案:

    function sendEmails() {
     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:C
     var dataRange = sheet.getRange(startRow, 1, numRows, 2);
     // Fetch values for each row in the Range.
     var data = dataRange.getValues();
     for (var i in data) {
       var row = data[i];
       var emailAddress = row[0]; // First column, includes Will.Henderson.
       var message = 'test';
       var subject = 'testy pants'
       var options = {
         cc : row[1], // Second column is the listserv that never changes. You mad add folks here on occasion
         bcc : row[2] // Third column include managers that change each week to bcc 
       }
      
       MailApp.sendEmail(emailAddress, subject, message, options);
       
     }
    }
    

    【讨论】:

      【解决方案2】:

      你可以试试这个:

      MailApp.sendEmail('mike@example.com', 'Subject', 'Your body.', {
          bcc:'email/s',
          cc:'email/s'
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多