@ShiMaik
Обычный парень

Объясните, пожалуйста, как для Google Sheets сделать скрипт автоматического экспорта конкретного листа в PDF?

Всем привет! Вдруг кто знает и располагает временем помочь с ответом, помогите, пожалуйста.

У меня есть Гугл таблица с двумя листами. В первом листе я редактирую, а второй лист схватывает данные из первого и я его экспортирую в формате PDF. И вот работу со вторым листом хочется автоматизировать.

Я ищу скрипт, чтобы он по этапно сделал несколько шагов:
1. Перешел на лист «Имя»
2. Запустил меню «Файл»
3. Выбрал пункт «Скачать» и «Формат PDF»
4. Экспорт

Нашел статью, в который есть информация +-, но за код я не шарю сильно.
  • Вопрос задан
  • 643 просмотра
Решения вопроса 1
i229194964
@i229194964
Веб разработчик
Можно использовать следующий скрипт
function exportSheetToPDF() {
  // Получаем активный Spreadsheet (гугл таблицу)
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  
  // Получаем лист по его имени
  var sheet = ss.getSheetByName('Имя листа');
  
  // Экспортируем лист в PDF
  var url = ss.getUrl();
  url = url.replace(/edit$/,'');
  var sheetId = sheet.getSheetId();
  var pdfName = sheet.getName() + ".pdf";
  var pdfUrl = url + 'export?exportFormat=pdf&format=pdf' +
      '&size=letter' +
      '&portrait=true' +
      '&fitw=true' +
      '&sheetnames=false&printtitle=false' +
      '&pagenumbers=false&gridlines=false' +
      '&fzr=false' +
      '&gid=' + sheetId;
  var options = {
    headers: {
      'Authorization': 'Bearer ' +  ScriptApp.getOAuthToken(),
    }
  }
  var response = UrlFetchApp.fetch(pdfUrl, options);
  var blob = response.getBlob().setName(pdfName);
  
  // Сохраняем PDF в Google Drive
  var folder = DriveApp.getFolderById('ID папки');
  folder.createFile(blob);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы