0

I would like to create a button to print just a certain range of a Google Spreadsheet. I am playing arroud with .getRangeByName class but it wont work. Maybe someone can help me with some ideas?


I am playing arround with some code I found here on stackoverflow. I am just stuck by replacing the columns and rows by a certain range name or namedRange.

All in all the result of the script below works fine for me so far.

Thanks and Regards!

function printPdf() { 
  SpreadsheetApp.flush();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var gid = sheet.getSheetId();
  var pdfOpts = '&size=A4&fzr=false&portrait=false&fitw=true&gridlines=false&printtitle=false&sheetnames=false&pagenum=UNDEFINED&attachment=false&gid='+gid;
  var last_row = sheet.getLastRow(); var printRange = '&c1=0' + '&r1=0' + '&c2=34' + '&r2='+last_row // B2:APn var url = ss.getUrl().replace(/edit$/, '') + 'export?format=pdf' + pdfOpts  + printRange;
  var app = UiApp.createApplication().setWidth(200).setHeight(50);
  app.setTitle('Verze pro tisk');
  var link = app.createAnchor('Zobrazit PDF', url).setTarget('_new');
  app.add(link);
  ss.show(app);
}
carlesgg97
  • 4,184
  • 1
  • 8
  • 24
voyou
  • 1
  • 2

0 Answers0