我想创建一个包含事件触发器的Google表格。我正在使用Google Apps脚本。
当单元格的值为library(dplyr)
df2 %>%
rowwise() %>%
do(data.frame(ID= .$ID, datelist = seq(.$StartDate,
.$EndDate, by = '1 day'), NoDays= 1))
时,会发送一封邮件来警告同事(验证)。
我找到了一个脚本并且有效。
现在我希望邮件正文和邮件主题包含触发器单元格值为Ok
的行的单元格值。
以下是工作表的示例:
当我在K8中写下#34; Ok"时,会向同事发送邮件。我希望正文邮件包含F8,G8和J8中的信息。同样,如果我写'#34; Ok"在K7中,我希望发送的邮件包含来自F7,G7和J7的信息。 (例如:"您的请求已经过验证。必要性为5级。所需数量为1.价格为17,94€。")
我使用的脚本:
OK
如何让Var /**
* add trigger for onedit -
* see menu -> Resouces -> Current project's triggers
*/
function Initialize() {
var triggers = ScriptApp.getProjectTriggers();
for(var i in triggers) {
ScriptApp.deleteTrigger(triggers[i]);
}
ScriptApp.newTrigger("sendNotification")
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onEdit()
.create();
};
/**
*
*/
function sendNotification(e) {
if("K" == e.range.getA1Notation().charAt(0)) {
if(e.value == "ok") {
//Define Notification Details
var recipients = "user@example.com";
var subject = "Validation" ;
var body = "Achat valider, à procéder";
//Send the Email
MailApp.sendEmail(recipients, subject, body);
}
}
}
和Var subject
包含单元格值?
答案 0 :(得分:1)
使用其中一种Class Spreadsheet
方法获取所需范围,然后使用getValue()
的{{1}}方法。
以下代码将显示“toast”(弹出窗口),显示F列中和所编辑单元格的同一行中的单元格值。
Class Range
答案 1 :(得分:0)
问题解决了。
要进行汇总,当您需要更改单元格值时的电子邮件通知,并且您希望邮件包含来自您已编辑的同一行的单元格值:
/**
* add trigger for onedit -
* see menu -> Resouces -> Current project's triggers
*/
function Initialize() {
var triggers = ScriptApp.getProjectTriggers();
for(var i in triggers) {
ScriptApp.deleteTrigger(triggers[i]);
}
ScriptApp.newTrigger("sendNotification")
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onEdit()
.create();
};
/**
*
*/
function sendNotification(e) {
if("L" == e.range.getA1Notation().charAt(0)) {
if(e.value == "oui") {
//Define Notification Details
var recipients = "XX@sCC.net";
var subject = "Request" + " - N° " + e.source.getRange('A'+ e.range.getRow()).getValue() ;
var body = "lolcat : " + e.source.getRange('B'+ e.range.getRow()).getValue() ;
//Send the Email
MailApp.sendEmail(recipients, subject, body);
}
}
}
对我来说很好。谢谢你的帮助:)