Diana
Diana

Reputation: 1

Google script doesn't send messages

I wrote a google script code (to send specific emails) and it'd been working for a while. But then I stopped it for about a month ago, and now I need it again. The problem is that code is executed, but it doesn't send any message. Could you please tell me what's wrong with my code.

function sendEmailL() {
  var sheet = SpreadsheetApp.getActive().getSheetByName('Lb'); //Sheet name
  var startRow = 2; // First row of data to process
  var numRows = 30; // Number of rows to process
  // Fetch the range of cells U:V
  var dataRange = sheet.getRange(startRow, 1, numRows, 30)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (var i in data) {
    var row = data[i];
    var emailAddress = row[20]; // First column
    var message = row[21]; // Second column
    var subject = 'Новое поступление от рекламодателя';
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

Upvotes: 0

Views: 106

Answers (1)

Cooper
Cooper

Reputation: 64110

If your not getting the right data in the dialog you need to learn how to use developer tools to figure out what's wrong.

function sendEmailL() {
  var sheet = SpreadsheetApp.getActive().getSheetByName('Lb'); //Sheet name
  var startRow = 2; // First row of data to process
  var numRows = 30; // Number of rows to process
  // Fetch the range of cells U:V
  var dataRange = sheet.getRange(startRow, 1, numRows, 30)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  let html='Test Data:<br />';
  for (var i;i<data.length;i++) {
    var row = data[i];
    var emailAddress = row[20]; // First column
    var message = row[21]; // Second column
    var subject = 'Новое поступление от рекламодателя';
    //MailApp.sendEmail(emailAddress, subject, message);
    html+=Utilities.formatString('<br />Row:%s-emal: %s subject: %s message: %s',i+startRow,emailAddress,subject,message)
  }
  SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),'Testing');
}

And you probably should be checking getRemainingDailyQuota() to make sure you haven't exceeded the daily quota

Upvotes: 1

Related Questions