我有一个谷歌表单,有两个表单,表单回复和报告:见这里
当表单提交报表时,更改响应表的最后一个表单或最后一行。我想发送一封电子邮件给提交表格的人,并在发送电子邮件后将报告表作为PDF附加在e栏中:请参阅此处
电子邮件发送至:表格回复栏b主题:一些文本和表格回复栏a抄送:ABC@yahoo.com正文:部分文本和表格答复f列附件:PDF格式的报告表
我用了这个代码但不管用
function onSubmit(e){
Logger.log('submit ran');
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var lastRow = sheet.getLastRow();
var sa = sheet.getRange(lastRow, 1).getValue();
var sB = sheet.getRange(lastRow, 2).getValue();
var sf = sheet.getRange(lastRow, 6).getValue();
var ssID = SpreadsheetApp.getActiveSpreadsheet().getId();
var sheetgId = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getSheetId();
var email = Session.getUser().getEmail();
var subject = SB;
var body = Sf;
var url = "https://docs.google.com/spreadsheets/d/e/..............................................................=0&single=true&output=pdf";
var result = UrlFetchApp.fetch(url)
var contents = result.getContent();
if (emailSent !== "EMAIL_SENT") {
MailApp.sendEmail(email,subject ,body, {attachments:[{fileName:SB+".pdf", content:contents, mimeType:"application//pdf"}]});
sheet.getRange().setValue("EMAIL_SENT");
SpreadsheetApp.flush();
}
}
我从电子表格中获取url
我重写了代码,但得到错误“TypeError:report.getAs不是函数(第36行,文件“code”)”
function onSubmit(e){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getAet();
var calculate = ss.getSheets()[2];
var Responses = ss.getSheets()[0];
var report = ss.getSheets()[1];
var sh = sheet.getRange(lastRow, 8).getValue();
var cell = calculate.getRange("b2");
cell.setFormula(sh);
SpreadsheetApp.flush();
var email = sB;
var subject =
var body = se;
var calculate = ss.getSheets()[2];
vafunction onSubmit(e){
Logger.log('submit ran');
var sheet = ss.getActiveSheet();
var calculate = ss.getSheets()[2];
var Responses = ss.getSheets()[0];
var report = ss.getSheets()[1];
var lastRow = Responses.getLastRow();
var sa = sheet.getRange(lastRow, 1).getValue();
var se = sheet.getRange(lastRow, 5).getValue();
v
cell.setFormula(sh);
SpreadsheetApp.flush();
var email = sB;
var body = se;
var calculate = ss.getSheets()[2];
var Responses = ss.getSheets()[0];
var pdf = report.getAs('application/pdf');
MailApp.sendEmail(email,subject ,body, {attachments:[pdf]});
sf.setvalue("EMAIL_SENT");
SpreadsheetApp.flush();
}
r Responses = ss.getSheets()[0];
var pdf = report.getAs('application/pdf');
MailApp.sendEmail(t ,body, {attachments:[pdf]});
sf.setvalue("EMAIL_SENT");
SpreadsheetApp.flush();
}
我找到了一个旧的例子,并使用getAs()发送文档,因此如果您只需要一张工作表,您只需创建一个包含您想要发送的信息的新电子表格。
var newSheet = SpreadsheetApp.create(Title,y,x);
在其中设置所需的任何值,然后
var pdf = newSheet.getAs('application/pdf');
MailApp.sendEmail(email, subject, body, {attachments:[pdf]} );
我建议创建一个新的电子表格,因为您无法将一个选项卡转换为PDF格式。
我建议您为此使用应用程序脚本。
作为表单和响应表的所有者,您可以创建绑定脚本,并使用Gmail和表单服务创建所需的pdf,并将其发送给用户。
您还可以创建触发器来检查何时提交新响应。
参考资料:
>
表格服务
Gmail服务
应用程序脚本表单快速启动
触发器
使用Prestashop 1.6 我有以下代码来生成PDF 我有以下代码发送电子邮件: 现在,我尝试创建一个脚本,生成PDF并将其作为电子邮件附件发送: 使用TCPDF发送电子邮件附件 电子邮件随附件发送,但我无法用pdf查看器打开文件。
我想用mailto标签发送电子邮件,附带一个pdf文件作为附件。mailto标记使用以下方法打开邮件窗口,其中包含传递的参数,如to和subject: 但是,附件作为一个参数不起作用。请建议如何在手机中发送pdf附件。 谢啦
问题内容: 我创建了一个函数来获取当前网页的屏幕截图,并使用html2canvas和jsPDF将其保存为PDF。以下是我的代码: 通过使用上面的代码,我可以下载文件并将其保存在本地。但我想直接使用php脚本通过电子邮件发送生成的pdf。 以下是在php脚本中发布图像的代码,该图像将作为电子邮件发送: 但是如何在参数中发布生成的pdf ? 请为此提出任何解决方案。 问题答案: 请检查代码- 我希望它
我正在使用TCPDF库在我的CakePHP应用程序中创建发票。如果我转到,我的view.ctp包括在浏览器中生成和显示pdf的代码。我想添加发送PDF作为电子邮件附件的能力,所以我创建了动作,并将代码从view.ctp复制到电子邮件模板中。 现在我被卡住了,我不知道如何在附加PDF之前先生成它。在我的view.ctp页面模板的末尾,我使用 它将pdf发送到浏览器中查看,而不创建文件。如果使用“F”
我有谷歌发票电子表格,我用vlookup公式从其他(数据)表中获取数据。只有我需要在发票表中输入行号。所以我创建了一个循环脚本,其中数据表中的自动行号将输入到发票表中,并发送带有PDF附件的电子邮件。当运行该脚本时,请正确输入每行的行号,但电子邮件不会发送。