1

我有一张表格,我们可以在其中跟踪 Google 表格中的部门指标。当指标发生变化时,我试图将其发送到电子邮件中。我正在使用 counta(在 P2 范围内)来监控是否有新指标进入,如果范围内的值发生变化,我想触发一封电子邮件。

function onEdit() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var value = ss.getSheetByName("EmailServices").getRange("P2").getValue().toString();
  var last = ScriptProperties.getProperty("last");

  if(value != last) 

  {
  ScriptProperties.setProperty("last",value);
  MailApp.sendEmail("dave@mydomain.com", "cell P2 changed",
    "new value: " + value + "\n\n" + ss.getUrl())
  }
}

我有趋势图表,最终我想通过电子邮件发送实际趋势图表已更改(输入新的月度值),但我想我会在跑步之前先走。:)

4

2 回答 2

1

由于公式而更改的单元格不符合触发 onEdit 函数的“编辑”条件。您应该监视源单元格(如果它们是手动编辑的),或者第二种选择是让一个函数在每分钟运行一次(或任何您喜欢的频率)运行的触发器下运行并发送电子邮件。您编写的函数看起来很适合在触发器下运行。

于 2013-02-10T03:51:56.063 回答
0

戴夫·拉兰德。看看这段代码。

function getTimeEditRange(Range){
  return YourFunction(Range);
}

如果值相同,则事件不会发生。

此致!

于 2013-02-10T10:59:58.803 回答