All,
I use a similar script to the below to send emails from a google spreadsheet:
// Sends an email when .......
function emailInfoRequired(row) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var subject = "Info Needed: " + sheet.getRange("F19").getValues();
var recipients = "email@email.com"
var message = "<HTML><BODY>"
+ "<P>" + sheet.getRange("K1").getValues()
+ "<BR>" + sheet.getRange("K2").getValues()
+ "</HTML></BODY>";
MailApp.sendEmail(recipients, subject, "", {htmlBody: message});
}
What i would like to do is instead of using single cells,i want to include a range such as: sheet.getRange("K2:N2").getValues()
The problem is, when i do this, the email body has a comma between every cell within that range making the email not make any sense plus look ugly. I tried formatting the cells as plain text but that didnt help. Is there a way to send the email of a range and not show the commas?
You could even make it more elegant by using a html table like this :
Illustration example :
Range.getValues()
returns a 2D array and a string representation of this 2D array is printed in your email. Depending on how you want to show it in your email, you have to process each element individually. Something like...