My code below worKs fine when i break it seperately to copy records and then send mail.
i need to have the send mail function run after the onedit copies the record. the code only copies the record but does not send the mail. the mail code works when executed manually.
function onEdit(event){ var ss = SpreadsheetApp.getActiveSpreadsheet();var s = event.source.getActiveSheet(); var r = event.source.getActiveRange();
if(s.getName() == "UK STOCK ALERTS" && r.getColumn() == 5 && r.getValue() == "Back Orders Accepted") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("AlertMailOut");
var target = targetSheet.getRange(1,16)
s.getRange(row, 1, 1, numColumns).copyTo(target);
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("AlertMailOut"); var startRow = 2; var numRows = 40; var dataRange = sheet.getRange(startRow, 1, numRows, 100); var data = dataRange.getValues(); for (var i = 0; i < data.length; ++i) {var row = data[i]; var emailAddress = row[0];var message = row[1]; // Second column
var emailSent = row[4]; // Third column
if (emailSent !== EMAIL_SENT) { // Prevents sending duplicates
var subject = 'Brick Fanatics Stock Update';
MailApp.sendEmail(emailAddress, subject, message);
SpreadsheetApp.flush();
} } } }