Отправить автоматическое письмо списку людей, когда значение J = ложь - PullRequest
0 голосов
/ 11 марта 2020

У меня есть скрипт, который я использовал в прошлом для отправки автоматического письма по электронной почте списку людей, и он прекрасно работал. Мне бы хотелось, чтобы скрипт проверил, есть ли сначала значения в строке, и, если они есть, проверим, если значение в J = false, перед отправкой электронного письма в список.

Ссылка на лист Google Sheet

Вот код, который я использую для отправки по таймеру:

//Sends email to Purchasing Dept at setup trigger desired time
function sendEmailsToPurchasing() { // Get the sheet where the data is, in sheet 'email list'
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("email list") 
  var startRow = 2; // First row of data to process since there is a header row 
  var numRows = sheet.getRange(1,5).getValue(); // Number of rows to process is set by a formula which counts rows 
  // Fetch the range of cells A2:B where the emails and messages are 
  var dataRange = sheet.getRange(startRow, 1, numRows, 2) 
  // Fetch values for each row in the Range to input into the mailing system 
  var data = dataRange.getValues(); 
  // This processes the emails you want to send 
  for (i in data) { 
    var row = data[i]; var emailAddress = row[0]; // First column is the email address 
    var message = row[1] + "\n\n**Please do not respond to this email as it is automatically generated by an account that is not checked.**\n\nPlease check the Procurement Issues to Resolve Google Sheet for new or unresolved entries"; // Second and third columns are the message 
    var subject = "Procurement Issues Update"; // This is the subject of the email 
  // This parses the data for the email to send 
    MailApp.sendEmail(emailAddress, subject, message); 
    } 
 }

1 Ответ

2 голосов
/ 11 марта 2020

Попробуйте это:

function sendEmailsToPurchasing() { 
  var sh=SpreadsheetApp.getActive().getSheetByName("email list") 
  var sr=2;
  var numRows=sh.getRange(1,5).getValue();
  var rg=sh.getRange(sr,1,numRows,sh.getLastColumn()) 
  var data=rg.getValues(); 
  for (var i=0;i<data.length;i++) { 
    var row=data[i]; 
    var emailAddress = row[0];
    var message = row[1] + "\n\n**Please do not respond to this email as it is automatically generated by an account that is not checked.**\n\nPlease check the Procurement Issues to Resolve Google Sheet for new or unresolved entries";
    var subject = "Procurement Issues Update"; 
    if(!row[9]) {
      MailApp.sendEmail(emailAddress, subject, message); 
    }
  } 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...