根据0或名称中的任意一个数字选择特定工作表

问题描述 投票:0回答:2

我正在尝试生成一封包含特定工作表的PDF附件的电子邮件,而不一定是活动工作表。我尝试引用特定的工作表名称和数字,但无济于事,它选择了标题为“AMDashboard_English”的表1。请帮忙。

function CreatePDF() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("AMDashboard_English");
  var sheet = ss.getSheetByName("AMDashboard_English");
  Logger.log(sheet.getName());

  var url = "https://docs.google.com/spreadsheets/d/SS_ID/export?".replace("SS_ID", sheet.getId());

  var url_ext = 'exportFormat=pdf&format=pdf'   // export as pdf / csv / xls / 

  var token = ScriptApp.getOAuthToken();
  var sheets = ss.getSheets(); 

  var blobs = [];
  var i=0

  var response = UrlFetchApp.fetch(
    url + url_ext + sheets[i].getSheetId(), {
      headers: {'Authorization': 'Bearer ' +  token}
    }
  );

  blobs[i] = response.getBlob().setName(sheets[i].getName() + '.pdf'); 
  DriveApp.createFile(blobs[i]);
  return blobs[i];
}
google-apps-script google-sheets export-to-pdf
2个回答
0
投票

网址应采用以下格式:

https://docs.google.com/spreadsheets/d/[SPREADSHEET_ID]/export?format=[PDF]&gid=[SHEET_ID]

0
投票

我发现代码实际上按计划工作。它无法工作的原因是我有另一组代码引用相同的var,显然混淆了google脚本。一切都很好。谢谢。

© www.soinside.com 2019 - 2024. All rights reserved.