如何解决提交谷歌表单时发送电子邮件
我不是程序员,但我需要这个脚本来发送最后一行的自动电子邮件,只有当有人提交 GoogleForm 时。我不知道该怎么做。这是我的脚本:
function sendMail()
{
var emailTemp = HtmlService.createTemplateFromFile("Email");
var ws = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Respostas ao formulário 1");
var data = ws.getLastRow("A:G").getValues();
data.forEach(function(row){
emailTemp.NOME = row[nome];
emailTemp.ID = row[id];
var htmlMessage = emailTemp.evaluate().getContent();
GmailApp.sendEmail(
row[email],"Inscrição no curso de Aromaterapia Vanusa Feitosa","Seu E-mail não suporta HTML.",{name: "Instituto Vanusa Feitosa",htmlBody: htmlMessage}
);
});
解决方法
您可以创建一个可安装的触发器。
可安装触发器可让 Apps 脚本在发生特定事件时自动运行功能。示例:提交的表单。
这将确保我们发送的电子邮件来自最新提交的表单。
如何创建可安装触发器?
- 打开您的 Apps 脚本项目。
- 在左侧,点击触发警报。
- 点击右下角的添加触发器。
- 选择并配置您要创建的触发器类型。对于这种情况,点击选择事件类型下方的下拉菜单,然后选择表单提交
- 点击保存。
您的触发器应如下所示:
示例:
表格:
代码:
function sendEmail(e) {
var response = e.namedValues;
var name = response['Name'];
var email = response['Email'];
var subject = "Inscrição no curso de Aromaterapia Vanusa Feitosa";
var templ = HtmlService.createTemplateFromFile('Email');
templ.name = name;
var message = templ.evaluate().getContent();
GmailApp.sendEmail(email,subject,'',{
htmlBody: message
});
}
Email.html:
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<p>
Hello <?= name ?>
</p>
</body>
</html>
回复:
电子邮件:
参考:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。