【问题标题】:google script column change email notification谷歌脚本栏更改电子邮件通知
【发布时间】:2017-02-25 18:48:25
【问题描述】:

这是我第一次尝试编写任何类型的脚本,同时也发布了一个问题。

我已经创建了一个谷歌表格,并且我想在此电子表格中每次添加一行时发送一封电子邮件通知(或者为了简单起见,每次在 A 列中填充一个新单元格时)。

我已经在这些论坛上搜索了几个小时,并将以下脚本放在一起,并尝试在谷歌脚本中安装“onedit”和“onchange”触发器,但没有任何效果。

以下链接很有帮助,但仍然无法获得我想要的结果。在进行相关编辑时,根本不会自动触发任何通知。

how to attach onChange cell value event/script to google sheet

email notification if cell is changed

  //Open function

function sendNotification() {

//Get spreadsheet & sheet

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();

//Define notification details

var recipients = "myname@email.com";
var subject = "New lead";

var body = 'A new lead has been added to Simba. For message: ' + message + '';

//Specify several sheet variables

var cell = ss.getActiveCell().getA1Notation();
var row = sheet.getActiveRange().getRow();
var cellvalue = ss.getActiveCell().getValue().toString();
var message = '';

//Specify if statement

  if(cell.indexOf('A')!=-1){ 
    message = sheet.getRange('B'+ sheet.getActiveCell().getRowIndex()).getValue()
  }

//Send the Email

MailApp.sendEmail(recipients, subject, body);

//Close function

};

【问题讨论】:

    标签: email notifications google-sheets


    【解决方案1】:
    var body = 'A new lead has been added to Simba. For message: ' + message + '';
    

    在这一行,“消息”是未定义的。它发生错误。由于此错误,无法发送邮件。因为“消息”的定义在这一行的下方。所以请把这一行改成下面

    message = sheet.getRange('B'+ sheet.getActiveCell().getRowIndex()).getValue()
    

    请为此功能安装触发器。安装触发器的方法见您的参考网址。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-04
      • 2017-07-31
      • 1970-01-01
      • 2016-09-12
      • 1970-01-01
      • 1970-01-01
      • 2017-09-17
      • 1970-01-01
      相关资源
      最近更新 更多