在编辑单元格时Google表格通知?

时间:2015-08-03 02:32:59

标签: notifications google-sheets

我有一个电子表格,我想在编辑特定单元格时向指定用户发送电子邮件。因此,例如,触发列是列J.我的目标是当编辑单元格(例如J4)时,它将自动发送电子邮件到单元格A4中提供的电子邮件地址。我知道这需要一个脚本。

1 个答案:

答案 0 :(得分:1)

这是我想出的:

function onEditTrigger(e){
  var range = e.range;
  var intCol = range.getColumn();

  if (intCol == 10)                                           // Check for column J
  {
    var intRow = range.getRow();                              // Get the row number of the edited cell
    var sheet = SpreadsheetApp.getActiveSheet();
    var dataRange = sheet.getRange(intRow, 1, 1, 3);          // Select columns A to C on the same row as the edited cell
    var dataValues = dataRange.getValues();                   // Get the values in the selected range and store them in the dataValues array

    MailApp.sendEmail(dataValues[0][0], "Notification", "Value in column C: " + dataValues[0][2]); // dataValues[0][0] = e-mail address, dataValues[0][2] = additional information
  }
}

然后在脚本编辑器的“资源”菜单上手动将触发器设置为onEdit

当我在那里写一些评论时,脚本几乎是不言自明的。但基本上,脚本首先检查用户是否编辑过"触发器"柱。如果是"触发器"在列中,它获取该已编辑单元格的行号,并在A列中获取相应的电子邮件地址,并在同一行的C列中获取其他信息。然后将通知电子邮件发送到该电子邮件地址,主题为"通知"以及C列中的值作为电子邮件的正文。