El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet.
Objetivo: Publicar una pestaña de hoja de cálculo en PDF
Ventajas: El código permite crear el PDF con orientación horizontal, por lo que queda mucho más bonito y adecuado.
Características: El código te permite configurar varias opciones, además de la orientación de la página. Hemos metido un mensaje emergente para que el usuario pueda elegir la pestaña y otro para que pueda configurar a que correo quiere que le llegue el PDF.
Este es el código:
function pdf_hor(){
// Creamos las variables de la hoja de cálculo
var libro =SpreadsheetApp.getActiveSpreadsheet()
// Pedimos la pestaña a convertir
var nombre = Browser.inputBox('Dime la pestaña que quieres convertir en pdf')
// Conseguimos la pestaña
var pestana = libro.getSheetByName(nombre)
// Creamos la URL con todas las variables de configuración
var url = 'https://docs.google.com/spreadsheets/d/'+libro.getId()+'/export?exportFormat=pdf&format=pdf' // export as pdf / csv / xls / xlsx
+ '&size=A4' // paper size legal / letter / A4 // Elegimos el tamaño del papel
+ '&portrait=false' // orientation, false for landscape // Elegimos la orientación
+ '&fitw=true' // fit to page width, false for actual size // Elegimos si se extiende el contenido a toda la página
+ '&sheetnames=false&printtitle=false' // hide optional headers and footers // Elegimos si imprimimos cabecera con nombre de hoja
+ '&pagenumbers=false&gridlines=false' // hide page numbers and gridlines // Elegimos si aparecen número de página y líneas de celdas
+ '&fzr=false' // do not repeat row headers (frozen rows) on each page // Elegimos si repetimos primera línea en diferentes páginas
+ '&gid='+pestana.getSheetId(); // the sheet's Id // Si quitamos esta línea, conseguiremos que imprima todas las pestañas
var token = ScriptApp.getOAuthToken();
var response = UrlFetchApp.fetch(url, {
headers: {
'Authorization': 'Bearer ' + token
}
});
var theBlob = response.getBlob().setName(pestana.getName()+'.pdf');
var newFile = DriveApp.createFile(theBlob);
// Al mandar el correo, con la siguiente variable configuramos el mensaje
var contenido_email= '<b>Aviso de mantenimiento</b>'
var opciones= { htmlBody: contenido_email, attachments: newFile};
var correo = Browser.inputBox('Dime el correo a quien quieres mandar el pdf')
// Mandamos el mensaje con el título "Mantenimiento". Lo podemos cambiar, pero siempre manteniendo las comillas
MailApp.sendEmail(correo, 'Mantenimiento', contenido_email, opciones)
// Borramos el PDF creado en nuestro Drive, para que no quede copia cada vez que mandamos el PDF por correo
newFile.setTrashed(true)
}
Suscribirse a:
Enviar comentarios (Atom)
Crear PDF horizontal
El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...
-
La fórmula importrange es muy potente, ya que nos permite unir datos de diferentes hojas de cálculo y, con un poco de imaginación, ofrecer ...
-
Este artículo tiene como objetivo mostrar el código básico para trabajar con Drive, es decir, para recorrer todos los archivos y subcarpetas...
-
El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...
No hay comentarios:
Publicar un comentario