javascript - 更改一列后从 Google 表格发送电子邮件

标签 javascript google-apps-script

我有一个简单的谷歌工作表收集数据。我们使用该表来跟踪事件。我想根据单元格(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");
}
}

最佳答案

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

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

关于javascript - 更改一列后从 Google 表格发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43087753/

相关文章:

javascript - 对不可变的 JS Map 对象执行删除操作

javascript - 将网络表单值返回至 Google 应用脚本

javascript - 如何在 Google 表格中包含多个单词的单元格中搜索特定单词并返回结果?

javascript - Meteor/Node.js : Multiple http requests within a for loop, 在时间间隔内均匀分布?

javascript - Django 网站未正确检查链接

javascript - fs.readdir 在函数内部调用时返回 undefined

javascript - 我无法让 Bigcommerce 全局变量再工作

javascript - 在谷歌应用程序脚本中错误地声明当前单元格变量

google-apps-script - 使用 GAS 和 API 创建自定义 "from"发送别名

twitter - 从 Google Apps 脚本调用 Twitter API