2017-08-31 100 views
0

我试图在Google表格中创建一个脚本,每当给定列(“列H”)内的值降到某个阈值以下时,它会向我发送一封自动发送的电子邮件。我目前已经编写了以下脚本,其中包括一个可安装的onEdit触发器。但是,在编辑电子表格时,脚本未运行:onEdit Installable触发器未触发

function StationeryEdited(e){ 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var data = sheet.getRange(2, 8, 200, 1).getValues(); 
    var newValue = e.value; 
    if (newValue < "10"){ 
     MailApp.sendEmail("[email protected]", "TEST", "TEST"); 
    } 

function createSpreadsheetEditTrigger(){ 
    var ss = SpreadsheetApp.getActive(); 
    ScriptApp.newTrigger(StationeryEdited) 
     .forSpreadsheet(ss) 
     .onEdit() 
     .create(); 
    } 
} 

回答

0

尝试此操作并通过脚本编辑器设置可安装触发器:

function onEdit(e) { 
    var editColumn=e.range.getSheet().getActiveCell().getColumn() 
    if(editColumn==8 && e.value>10){ 
    MailApp.sendEmail("[email protected]", "TEST", "TEST"); 
    }} 
+1

简单的onEdit触发器无法发送电子邮件。错误的答案。 –

+1

如果你是对的。我确定了我的答案。我已经通过脚本编辑器进行了测试,并发送了它。抱歉。 –

+0

一旦通过脚本编辑器设置了可安装触发器,就可以很好地工作。感谢您的输入,Ed!非常感激! – jbarry1

0

您是否曾尝试将函数名称放入引号中?

ScriptApp.newTrigger('StationeryEdited') 

此外,你可以简单地去编辑 - >当前项目触发和配置触发你的函数手动选择了“StationeryEdited”功能下列选项

enter image description here