[英]Script to send email to multiple addresses
每当有人在Google表格中填写必填字段时,我都会使用Google表格发送自动填充的自动电子邮件。 如何根据用户输入的位置将以下脚本发送到不同的电子邮件? 例如,如果用户输入伦敦,则将电子邮件发送到email1@email.com,或者如果用户输入巴黎,则将电子邮件发送到email2@email.com。 另外,我是否需要为Google表格添加触发器以了解何时启动此脚本?
function fireEmail(e){
var userName = e.values[1];
var timeStamp = e.values[0];
var medalType1 = e.values[2];
var medalType2 = e.values[3];
var medalColor = e.values[4];
var medalRecipient = e.values[5];
var dateNeeded = e.values[6];
var medalLocation = e.values[7];
var emailBodyHTML = [];
emailBodyHTML += '<b>You have received a medal request from ' + userName + '.</b>';
emailBodyHTML += '<p>Onboarding Ops Medal Type, If Applicable: ' + medalType1 + '</p>';
emailBodyHTML += '<p>Service Ops Medal Type, If Applicable: ' + medalType2 + '</p>';
emailBodyHTML += '<p>Medal Color: ' + medalColor + '</p>';
emailBodyHTML += '<p>Medal Recipient: ' + medalRecipient + '</p>';
emailBodyHTML += '<p>Medal Needed by: ' + dateNeeded + '</p>';
emailBodyHTML += '<p>Please visit <a href="place.com">the medaling document</a> to manage this request.</p>';
var emailSubject = 'New Medal Request for ' + medalLocation + '!';
MailApp.sendEmail({
to: "email1@email.com",
name: "Medaling Request",
subject: emailSubject,
htmlBody: emailBodyHTML
});
}
要检查位置,可以使用if语句 (在htlm正文之后)
var mailTo;
if (medalLocation == 'London') {
mailTo = 'abc@gmail.com';
} else if (medalLocation == 'Paris' {
mailTo = 'def@gmail.com';
}
如果只有两个位置,则还可以使用条件(三元)运算符 :
var mailTo = (medalLocation == 'London') ? 'abc@gmail.com' : 'def@gmail.com'
另一方面,如果您要检查的位置更多,我建议您使用switch语句
var mailTo;
switch(medalLocation) {
case 'London':
mailTo = 'abc@gmail.com';
break;
case 'Paris':
mailTo = 'def@gmail.com';
break;
case 'Brussels':
mailTo = 'ghi@gmail.com';
break;
default:
mailTo = 'jkl@gmail.com';
}
然后,确定“ mailTo”后,将邮件部分更改为
MailApp.sendEmail({
to: mailTo,
name: "Medaling Request",
subject: emailSubject
htmlBody: emailBodyHTML
});
该脚本应具有一个on Form提交触发器。 希望这可以帮助 ?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.