gpt4 book ai didi

javascript - 通过单元格值更改触发电子邮件脚本

转载 作者:行者123 更新时间:2023-12-04 10:46:30 25 4
gpt4 key购买 nike

我正在使用 Google 表单来运行客户数据库。当客户调用我时,我正在编辑相同的 Google 表单条目。因此,我想了解特定单元格的这种更改或条目如何触发我将在此处发布的邮件脚本。它应该只在变化的那一刻触发一次。谢谢你的提示。

编辑:

我现在添加了“if”,并将触发器设置为表单提交。现在,如果我在 Google 表单中将值更改为“测试”并发送表单,则会向我发送一封电子邮件。但是,如果表单中有多个电子邮件地址,我该如何为每个条目指定此项。还说它不送双?

function sendArticleCountEmails() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
ss.setActiveSheet(ss.getSheetByName("Test"));
var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange("A2:F4");
var data = dataRange.getValues();
var currentValue = sheet.getRange("J2").getValue();
if (currentValue == ("test"))
for (i in data) {
var rowData = data[i];
var emailAddress = rowData[1];
var recipient = rowData[0];
var message1 = rowData[2];
var message2 = rowData[3];
var parameter2 = rowData[4];
var message3 = rowData[5];
var message = 'Dear ' + recipient + ',\n\n' + message1 + ' ' + message2 + ' ' + parameter2 + ' ' + message3;
var subject = 'Your article count for this month';
MailApp.sendEmail(emailAddress, subject, message);
}
}

最佳答案

回答:
无法发送有关 Google 表格中单元格更改的电子邮件。但是,您可以在提交表单时发送电子邮件。
简单触发器:
根据关于简单触发器的 Google Apps 脚本文档:

The onEdit(e) trigger runs automatically when a user changes the value of any cell in a spreadsheet.


但是,触发器也有一定的限制:

They cannot access services that require authorization. For example, a simple trigger cannot send an email because the Gmail service requires authorization, but a simple trigger can translate a phrase with the Language service, which is anonymous.


提交表格:
您仍然可以使用 GmailApp Apps 脚本中的库来发送电子邮件,并指定多个发送到。如果,如您的示例工作表中所示,电子邮件地址都在 B 列中:
var emails = []
var addresses = SpreadsheetApp.getActiveSpreadsheet().getRange('B2:B').getValues();
var list = [];
for (var i = 0; i < addresses.length; i++) {
if (addresses[i] == "") {
break;
}
if (list.indexOf(addresses[i][0]) > -1) {
}
else {
list.push(addresses[i][0]);
}
}
然后编辑:
var emailAddress = rowData[1];
成为:
var emailAddress = list[0];
这会将电子邮件发送到列出的所有电子邮件地址,但会跳过工作表中的重复项。
我希望这对你有帮助!
引用:
  • Simple Triggers - onEdit(e)
  • Simple Triggers - Restrictions
  • 关于javascript - 通过单元格值更改触发电子邮件脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59681029/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com