Script do Google Apps Enviar e-mail via planilha

Aug 27 2020

tento criar um script de aplicativos do Google que enviará e-mails para mim e estou um pouco travado. Eu procurei sem sucesso. Desejo fazer isso enviando um único e-mail com uma lista CC que nunca muda e que a variável bcc referencie uma coluna na planilha, pois ela muda semanalmente.

Qualquer ajuda seria muito apreciada. Minha tentativa abaixo produz erros, pois a linha 15 16 não está correta.

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 colummn include managers that change each week to bcc 
   }
  MailApp.sendEmail(emailAddress, subject, message);
 }
}

Respostas

2 Marios Aug 27 2020 at 06:55

Explicação:

Você está muito perto. O objeto json optionsdeve ser definido assim:

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

e então você pode enviar o e-mail assim:

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

Solução Completa:

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 colummn include managers that change each week to bcc 
   }
  
   MailApp.sendEmail(emailAddress, subject, message, options);
   
 }
}
1 NerdySid Aug 27 2020 at 01:09

Você pode tentar isto:

MailApp.sendEmail('[email protected]', 'Subject', 'Your body.', {
    bcc:'email/s',
    cc:'email/s'
});