我创建了一个简单的 Google 表单,其中包含以下字段:
姓名、电子邮件、工资和请求。
当用户完成表单后,我想向他/她发送一封包含信息的电子邮件。但是,我想使用“请求”字段插入一个唯一的号码,用户在需要进一步通信时可以参考该号码。如果用户在“请求”字段中输入任何内容,我想丢弃它并使用我生成的数字(在响应和电子表格中)。
我已经能够使用我找到的其他信息拼凑出脚本。它似乎适用于除了返回给用户的电子邮件响应之外的所有内容。-它不包含我想在“请求”字段中使用的号码,而是发回用户在“请求”字段中输入的任何输入。请求字段。电子表格看起来不错(“请求”字段中有我的号码。)
这是我的脚本:
function sendFormByEmail(e) {
var capsht = SpreadsheetApp.getActiveSheet();
var caprow = SpreadsheetApp.getActiveSheet().getLastRow();
capsht.getRange(caprow,5).setValue("Cap-"+caprow);
var admin = "[email protected] /cdn-cgi/l/email-protection";
try {
var recipient = e.namedValues["Email"];
var subject = "Capacity Request Form Received";
var s = SpreadsheetApp.getActiveSheet();
var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message = "";
for (var i in headers)
message += headers[i] + ' = '+ e.namedValues[headers[i]].toString() + "\n\n";
MailApp.sendEmail(recipient, subject, message);
}
catch (error) {
MailApp.sendEmail(admin, "Error with form submission response email", error.message);
}
}
试试这样:
(在代码中添加注释并删除重复内容)
function sendFormByEmail(e)
{
var capsht = SpreadsheetApp.getActiveSheet();
var caprow = capsht.getLastRow();
var codenumber = "Cap-"+caprow
capsht.getRange(caprow,5).setValue(codenumber);
var admin = "[email protected] /cdn-cgi/l/email-protection";
try {
var recipient = e.namedValues["Email"];
var subject = "Capacity Request Form Received";
var headers = capsht.getRange(1,1,1,capsht.getLastColumn()).getValues()[0];
var message = "";
for(var i in headers)
if(i!=4){
message += headers[i] + ' = '+ e.namedValues[headers[i]].toString() + "\n\n";
}else{ // if i==4 (column nr5)then use your code number
message += headers[i] + ' = '+ codenumber + "\n\n";
}
MailApp.sendEmail(recipient, subject, message);
}
catch (error)
{
MailApp.sendEmail(admin, "Error with form submission response email", error.message);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)