google-apps-script - 使用脚本在 Google 表格中发送一张表格不起作用
问题描述
我正在使用此代码:https ://stackoverflow.com/a/45781391/13875010 我只想将表 #3 发送到位于表三上单元格 A1 中的电子邮件地址。我运行脚本,没有任何反应。我究竟做错了什么?
function sendSheetToPdfwithA1MailAdress(){ // this is the function to call
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getSheets()[3]; // it will send sheet 0 which is the first sheet in the spreadsheet.
// if you change the number, change it also in the parameters below
var shName = sh.getName()
sendSpreadsheetToPdf(3, shName, sh.getRange('A1').getValue(),"test email with the address in cell A1 ", "This is it !");
}
function sendSpreadsheetToPdf(sheetNumber, pdfName, email,subject, htmlbody) {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var spreadsheetId = spreadsheet.getId()
var sheetId = sheetNumber ? spreadsheet.getSheets()[3].getSheetId() : null;
var url_base = spreadsheet.getUrl().replace(/edit$/,'');
var url_ext = 'export?exportFormat=pdf&format=pdf' //export as pdf
+ (sheetId ? ('&gid=' + sheetId) : ('&id=' + spreadsheetId))
// following parameters are optional...
+ '&size=A4' // paper size
+ '&portrait=true' // orientation, false for landscape
+ '&fitw=true' // fit to width, false for actual size
+ '&sheetnames=true&printtitle=false&pagenumbers=true' //hide optional headers and footers
+ '&gridlines=false' // hide gridlines
+ '&fzr=false'; // do not repeat row headers (frozen rows) on each page
var options = {
headers: {
'Authorization': 'Bearer ' + ScriptApp.getOAuthToken(),
}
}
var response = UrlFetchApp.fetch(url_base + url_ext, options);
var blob = response.getBlob().setName(pdfName + '.pdf');
if (email) {
var mailOptions = {
attachments:blob, htmlBody:htmlbody
}
MailApp.sendEmail(
email,
subject+" (" + pdfName +")",
"html content only",
mailOptions);
MailApp.sendEmail(
Session.getActiveUser().getEmail(),
"FRWD "+subject+" (" + pdfName +")",
"html content only",
mailOptions);
}
}
解决方案
我使用了错误的数字...第 3 页是第 2 页。
推荐阅读
- reactjs - React hooks fetch 不会停止获取
- c# - CefSharp 检测是否正在播放音频
- node.js - 使用ajax调用进行数据库操作后的节点渲染页面
- c - 我不断收到错误消息的这个 c 代码中的错误是什么?
- r - 我在使用 for 循环创建列表时遇到问题
- nestjs - Nestjs - 在 @nestjs/microservices 依赖项中声明的 mocha 类型存在问题
- php - 如何将来自 3 个或更多查询的关系数据合并到一个多维数组中?
- ios - 使用蓝牙的 iOS 应用是否需要蓝牙 SIG 认证?
- java - 如何使用 GET HTTP 方法修复 exchange() 方法以获得正确的 JSON 答案?
- typescript - 在 TypeScript void 函数中更改传递对象的类型