我正在嘗試從共享的谷歌磁盤中的電子表格創建 pdf,但我試圖找出阻止生成 pdf 的原因。問題位于這一行:
var driveFolder = DriveApp.getFoldersByName(folderName).next();
這是整個代碼:
function createPDF() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Article 19");
var folderName=ss.getRangeByName("NumAff").getValue();
var fileName='Tableau 19.09_' ss.getRangeByName("NumAff").getValue();
sheet.showSheet();
var gid = sheet.getSheetId();
const pdfOpts = '&top_margin=0.30&bottom_margin=0.30&left_margin=0.25&right_margin=0.25'
'&size=LETTER' // paper size letter / You can use A4 or legal
'&portrait=true' // orientation portal, use false for landscape
'&fitw=true' // fit to page width false, to get the actual size
'&sheetnames=false' // hide optional headers
'&printtitle=false' //and footers
'&pagenumbers=false' // hide page numbers
'&gridlines=false' //and gridlines
'&horizontal_alignment=CENTER'
'&vertical_alignment=CENTER'
'&fzr=true' // do not repeat row headers (frozen rows) on each page
'&attachment=false'
'&gid=' gid;
var url = ss.getUrl().replace(/edit$/, '') 'export?format=pdf' pdfOpts // export as pdf / csv / xls / xlsx
var options = {headers: {'Authorization': 'Bearer ' ScriptApp.getOAuthToken()}}
var blobresponse = UrlFetchApp.fetch(url, options);
var blob=blobresponse.getBlob().setName(ss.getName() ".pdf" );
var driveFolder = DriveApp.getFoldersByName(folderName).next();
var file = driveFolder.createFile(blob);
file.setName(fileName);
}
希望如果有人可以向我解釋問題的來源。
uj5u.com熱心網友回復:
處理folderor時應該檢查迭代器file。
我認為folderName.
var folders = DriveApp.getFoldersByName(folderName);
if (folders.hasNext()) {
var driveFolder = folders.next();
}
參考: FolderIterator
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/380486.html
上一篇:格式'%f'需要型別為'double'的引數,但引數2的型別為'float(*)(float*)'
下一篇:將編輯器限制為特定范圍腳本
