如果列中的任何单元格更改为“是”,则发送电子邮件。

时间:2018-01-15 15:04:55

标签: email google-apps-script google-sheets

我有一个带有“是/否”列(列AP)的电子表格,只要该列中的任何值发生更改,我就需要发送电子邮件通知。我已经研究了如何在更改特定单元格时发送一个:

function sendNotification(e) {


if("AP4" == e.range.getA1Notation()) {
if(e.value == "YES") {



 //Define Notification Details
 var recipients = "***********@gmail.com";
 var subject = "Update"+e.range.getSheet().getName();
 var body = "This cell has changed";

 //Send the Email
 MailApp.sendEmail(recipients, subject, body);
}
}
}

但是,我需要这个才能适用于AP列中的任何单元格。

然后我还需要将已更改行的其他值存储为要在电子邮件正文中使用的变量。例如,产品名称在B列中,我需要能够访问此名称,以便我的消息显示为"列AP已更改为'是'为" + productName。非常感激地收到任何帮助。

1 个答案:

答案 0 :(得分:2)

试试这个:

function sendNotification(e){
if(e.range.getColumn()==42 && e.value=='YES'){
 var recipients = "***********@gmail.com";
 var subject = "Update"+e.range.getSheet().getName();
 var body = "This cell has changed";
 var valColB=e.range.getSheet().getRange(e.range.getRow(),2).getValue();
 MailApp.sendEmail(recipients, subject, body)
 }
}