【问题标题】:Send an email from Google Sheets after a change to one column更改一列后从 Google 表格发送电子邮件
【发布时间】:2017-08-22 14:25:48
【问题描述】:

我有一个简单的谷歌表格收集数据。我们使用工作表来跟进事件。我想根据对始终是同一列的单元格(W 列)的更改发送电子邮件。电子邮件始终发送给企业中的同一个人。

我已经能够对工作表中的任何单元格进行更改并发送第一封电子邮件。但我无法弄清楚如何将其锁定为只查看一列。

理想情况下,活动会留下足迹,所以我想在单元格中添加评论。它也在工作。

我需要什么 - 如何将脚本限制为仅查看 W 列???谢谢你。

这些列也很好地通过了他的电子邮件。

function onEdit(event)
{
  var ss = event.source.getActiveSheet();
  var r = event.source.getActiveRange();
  r.setComment("Email Sent To Warrens: " + (new Date()));
}
function CustomEmail() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange("A2:W13");
var UserData = range.getValues();
var text = 'm******n@gmail.com';
for (i in UserData) {
var row = UserData[i];
var Title = row[6];
var SURNAME = row[7];
var EmailAddress = row[9];
var Rentalagreementnumber = row[3];
var Startofhiredate = row[4];
var Invoicereason = row[5];
var Amountdue = row [2];
var Rentallocation = row [8];  
MailApp.sendEmail(text, "a***@*****.co.uk", "SUBJECT", "EMAIL TEXT");
}
}

【问题讨论】:

    标签: javascript google-apps-script


    【解决方案1】:

    event object 中获取range,然后使用函数range#getA1Notation() 来检查哪一列被编辑了。

    function onEdit(event)
    {
      var range = event.range; 
      if(range.getA1Notation().charAt(0) === 'W'){
          sendEmail();
          range.setComment("Email Sent To Warrens: " + (new Date()));
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2019-12-14
      • 1970-01-01
      • 1970-01-01
      • 2014-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多