Javascript 当列中的任何内容发生更改时检测,google sheets
基本上,我想在谷歌表单的整个栏目内进行任何编辑,以触发电子邮件。我花了很长时间寻找,但找不到任何解决这个问题的方法。我希望在整个列中的值发生更改时,使用OneEdit触发器自动发送表单。我让它在特定单元格更改时工作,但似乎无法为列中的任何值获取它。目前我有:Javascript 当列中的任何内容发生更改时检测,google sheets,javascript,google-sheets,Javascript,Google Sheets,基本上,我想在谷歌表单的整个栏目内进行任何编辑,以触发电子邮件。我花了很长时间寻找,但找不到任何解决这个问题的方法。我希望在整个列中的值发生更改时,使用OneEdit触发器自动发送表单。我让它在特定单元格更改时工作,但似乎无法为列中的任何值获取它。目前我有: function autoEmailTest(e) { var ss = SpreadsheetApp.getActive(); var sheet = ss.getSheetByName("Project Status"); var
function autoEmailTest(e) {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName("Project Status");
var valueToCheck = sheet.getRange("B2").getValue(); // "B2"
var rangeEdit = e.range.getA1Notation();
if (rangeEdit == "B2") // stops changes from every cell triggering emails
MailApp.sendEmail("xyz@email.com", "ACTION REQUIRED", "link here");
}
我试过使用
'Project Status'!B:B
如中所示,但由于它似乎希望直接引用一个单元格,我不确定如何进行此操作。
此外,如果有人知道如何在单元格颜色改变时将触发器设置为包含或独占,这将非常有用,但不是必需的
提前感谢您的帮助。我找到了解决方案。我不知道你可以用A1符号索引。将其更改为:
if (rangeEdit[0] == "B") {
do stuff
}
检查“B”列中的所有内容,并阻止任何单元格更改导致的垃圾邮件。字符更改方面的任何内容。当前的计划是让名为“状态”的列默认填写“未完成”,并在更改为“完成”时自动向负责人发送电子邮件。