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