Javascript 使用脚本和html编码多人和不同链接的工作表电子邮件合并

Javascript 使用脚本和html编码多人和不同链接的工作表电子邮件合并,javascript,html,google-apps-script,google-sheets,mailmerge,Javascript,Html,Google Apps Script,Google Sheets,Mailmerge,我已经在google表单中添加了许多(80+),以预填充表单,并让它们进入表单并在表单上签上首字母,然后修复表单上任何缺失的数据。我给每个人发了一封关于这个项目的电子邮件提醒,同时我想用谷歌表单中的脚本将他们的链接发送到表单上。 在youtube网上找到类似的东西后,我把这个脚本放在了一起,但我在电子邮件中挣扎着用html编码发送给每个人 function sendEmail() { var email = 0; var name = 1; var link = 2; var emailTem

我已经在google表单中添加了许多(80+),以预填充表单,并让它们进入表单并在表单上签上首字母,然后修复表单上任何缺失的数据。我给每个人发了一封关于这个项目的电子邮件提醒,同时我想用谷歌表单中的脚本将他们的链接发送到表单上。 在youtube网上找到类似的东西后,我把这个脚本放在了一起,但我在电子邮件中挣扎着用html编码发送给每个人

function sendEmail() {
var email = 0;
var name = 1;
var link = 2;

var emailTemp = HtmlService.createTemplateFromFile("Email")

var ws = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var wsSettings = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Settings");

var name = wsSettings.getRange("B2").getValue();
var subject = wsSettings.getRange("B1").getValue();

var data = ws.getRange("A2:D" + ws.getLastRow()).getValues();

data = data.filter(function(r){ return r[3] == true });


data.forEach(function(row){
  emailTemp.e = row[email];
  emailTemp.n = row[name];
  emailTemp.l = row[link];
  var htmlMessage = emailTemp.evaluate().getContent();
  GmailApp.sendEmail(
    row[email],
     subject, 
     "Your email doesn't support HTML.",
     {name: "name", htmlBody: htmlMessage}
     );

});

}
这是我的电子邮件html:
亲爱的,

这封电子邮件将带您进入预填充的谷歌表单,该表单用于记录2021年1月22日支持社区儿童和家庭的出席人数,从下午12:00-3:00举行。

请访问此链接以完成任何缺失的数据,并在单击提交按钮之前填写首字母。您只能在2021年1月22日注册参加培训,因此如果您想要参加证书或SCECH,请不要忘记填写表格

如果您知道参加会议的人没有收到需要填写表格的电子邮件,请让他们尽快与我联系,以便他们有需要填写的表格登录

要访问支持社区儿童和家庭的缩放演示文稿,
请单击此处。该链接将仅在2021年1月22日(接近开始时间)起作用


如果您有任何问题或顾虑,请告诉我


致以最诚挚的问候,
埃里卡·鲁珀特
海湾阿伦纳克ISD



要在HTML中包含链接,您需要一个a标记

您需要在html代码中包含以下内容,其中的链接用于创建一个可单击的项目,以显示用户需要的网页:


我对你发送电子邮件的代码不太熟悉,下面是一个有效的代码:

函数sendmail(){ var ss=SpreadsheetApp.getActiveSpreadsheet(); var sh=ss.getSheetByName('Sheet1'); var rng=sh.getDataRange(); var val=rng.getDisplayValues(); var lr=rng.getLastRow(); var name=sh.getRange(“B2”).getValue(); var subject=sh.getRange(“B1”).getValue(); 对于(变量i=1;i感谢您的帮助。我不能让它工作,因为有一个错误。试图执行sendEmail,但无法保存。这就是我得到的错误:语法错误:语法错误:语法错误:意外标记'var'行:12文件:Code.gs(第12行读取:html.e=var[I][0];来自上面的代码。将html.e=var[I][0]更改为html.e=val[I][0]它会起作用的。这是我根据您的评论编写的新代码。我仍在努力让发送电子邮件正常工作。如何添加我的代码让您查看我的问题?我在第17行收到一个HTML错误,即GmailApp.sendmail(-在此错误之前,我收到了一个错误,我的HTML是错误的。我确实收到了电子邮件,但仍然没有链接,所以我一定是有错误的链接。我是将链接放在HTML代码中还是从脚本页面中提取这些链接?这是我的一个HTML链接的内容:要达到缩放演示,以便支持儿童和家庭我们的社区将于2021年1月22日开始工作。