【问题标题】:onEdit Installable Trigger not firingonEdit 可安装触发器未触发
【发布时间】:2018-02-09 15:08:27
【问题描述】:

我正在尝试在 Google 表格中创建一个脚本,每当给定列(“H 列”)中的值低于某个阈值时,该脚本都会向我发送一封自动电子邮件。我目前编写了以下脚本,其中包括一个可安装的 onEdit 触发器。但是,当编辑电子表格时,脚本没有运行:

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("test@test.co", "TEST", "TEST");
    }

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

【问题讨论】:

    标签: google-apps-script google-sheets triggers


    【解决方案1】:

    您是否尝试过像这样将函数名放在引号中?

    ScriptApp.newTrigger('StationeryEdited')
    

    此外,您可以简单地转到 编辑 -> 当前项目触发器并为您的函数手动配置触发器,为“StationeryEdited”函数选择以下选项

    【讨论】:

      【解决方案2】:

      试试这个并通过脚本编辑器设置可安装触发器:

      function onEdit(e) {
        var editColumn=e.range.getSheet().getActiveCell().getColumn()
        if(editColumn==8 && e.value>10){ 
          MailApp.sendEmail("test@test.co", "TEST", "TEST");
        }}
      

      【讨论】:

      • 简单的 onEdit 触发器无法发送电子邮件。错误的答案。
      • 如果你是对的。我确定了我的答案。我已经通过脚本编辑器进行了测试并发送了它。对不起。
      • 一旦通过脚本编辑器设置了可安装的触发器,这就完美地工作了。感谢您的意见,埃德!非常感谢!
      • 我建议为可安装触发器使用另一个函数名称以避免混淆....
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-18
      相关资源
      最近更新 更多