繁体   English   中英

谷歌脚本如何根据正在编辑的一个单元格发送电子邮件

[英]Google Script how to send email based on ONE cell being edited

我需要有关此代码的帮助。 它按我想要的方式工作,除了当所有单元格在行中被编辑时它会向我发送电子邮件。 我只想知道 C 列中的一个单元格何时被编辑并根据该编辑发送一封电子邮件。 这是我所拥有的:

function go(e) {
  // Fetch the monthly sales
  var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet().getRange("C3:C"); 
  var monthSales = monthSalesRange.getValue();
  // Check totals sales
  if (monthSales > 1){
  var rData = e.source.getActiveSheet().getRange(e.range.rowStart,1,1,4).getValues();
  let n = rData[0][2];
  let d = new Date(rData[0][0]).toLocaleDateString("en-US");
  let items = rData[0][3];
  let loc = rData[0][1];
  let now = new Date().toLocaleString("en-US");
  let b = e.source.getActiveSheet().getRange("B1").getValues();
  
  let msg = " (" + d + ") Enter warehouse location for " + n + " " + items + " Requested by " + loc + " " + now;
  GmailApp.sendEmail("myemailaddress", b + " Entered a Request", msg)
}
}

有人可以帮我解决这个问题。 我只想在编辑 C 列中的最后一行时收到通知,并根据该编辑发送一封电子邮件。

要在未编辑 C 列时停止发送电子邮件,您可以添加if(e.range.columnStart !== 3) return; function go(e){之后

要在未编辑 C 列的最后一行时停止发送电子邮件,请添加if(!(e.range.getSheet().getLastRow() === e.range.rowStart e.range.columnStart === 3)) return; function go(e){之后

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM