need help with google script. I have multiple row spreadsheet.
Need a script that does the following:
If any cell in column G has been changed, then send email notification
to custom address with information from this row: information from
cell D and new value of cell G.
UPD
I found useful information:
function emailNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var cell = ss.getActiveCell().getA1Notation();
var cellvalue = ss.getActiveCell().getValue().toString();
var recipient = "me@gmail.com";
var subject = 'Update to '+sheet.getName();
var body = sheet.getName() + ' has been updated. Visit ' + ss.getUrl() + ' to view the changes on cell: ?' + cell + '? New cell value: ?' + cellvalue + '?';
MailApp.sendEmail(recipient, subject, body);
};
This script tracks the changes in the entire table. And I would like track changes only in column G, and get values ??from column D.
Question:
How to get the value of the cell in column D when the value has
changed cell in column G
Finally script — answer to my question
spreadsheet
function sendNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var cell = ss.getActiveCell().getA1Notation();
var row = sheet.getActiveRange().getRow();
var cellvalue = ss.getActiveCell().getValue().toString();
var recipients = "me@gmail.com";
var message = '';
if(cell.indexOf('G')!=-1){
message = sheet.getRange('D'+ sheet.getActiveCell().getRowIndex()).getValue()
}
var subject = 'Update to '+sheet.getName();
var body = sheet.getName() + ' has been updated. Visit ' + ss.getUrl() + ' to view the changes on row: ?' + row + '?. New comment: ?' + cellvalue + '?. For message: ?' + message + '?';
MailApp.sendEmail(recipients, subject, body);
};
Set trigger on onEdit and script will work fine
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…