[RESUELTO] Macro imprimir PDF en hoja donde se active

Sólo un punto de encuentro para ofertas profesionales relacionadas con AOO
Responder
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

[RESUELTO] Macro imprimir PDF en hoja donde se active

Mensaje por Galle43 »

Muy buenas tardes desde Galicia, España.

Llevo tiempo tanto tiempo intentando crear dos macros, que he llegado a la conclusión de que necesito ayuda profesional o amateur antes que volverme loco. Así que si alguien puede ayudarme, con mucho gusto estaría dispuesto a pagarle una cantidad razonable por la solución.
En concreto son dos macros.

La primera consiste en exportar a pdf únicamente el área de impresión de la hoja donde se sitúe el botón que active la macro. La macro finalizaría en la ventana de "guardar como", para que el usuario pueda darle el nombre al archivo y guardar el pdf donde considere.

La segunda macro consiste en hacer lo mismo que la anterior; crear el pdf y directamente adjuntarlo a un correo electrónico (archivo - enviar - documento adjunto en pdf). Si se consigue que el nombre de archivo del pdf sea el de una celda de la hoja sería perfecto.

Necesito ambas macros para insertarlas en aproximadamente 15 hojas diferentes dentro de la misma hoja de cálculo. Es una hoja de cálculo - formulario para una pequeña imprenta, donde los clientes pueden elegir la hoja correspondiente al tipo de trabajo que necesitan (posters, tarjetas... ) y una vez en la hoja con los datos rellenados enviarnos el pdf con la información.

He encontrado en el foro macros parecidas, pero todas me daban problemas de impresión y no logre adaptar ninguna... .

Si alguien puede ayudarme que me mande un mensaje privado o que lo cuelgue en este post. Por cierto, no me importa lo más mínimo que la solución se postee en este foro para ayuda de otros que puedan tener las mismas dudas.

Muchas gracias a todos y mi enhorabuena a este maravilloso foro.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Hola...

Puedo hacerte una extensión con estas dos macros y algún valor agregado por modicos $100 dolares... pero te voy a dar un tip, lo que quieres en mayor o menor medida lo he respondido en estos foros...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Hola Mauricio, ¿que tal?. Perdón por responderte con este retraso, pero llevo una semana en la que no me ha sobrado mucho tiempo. Antes de nada mostrarte por alegría por haber recibido tu respuesta en este foro. Son muchas las ocasiones en que tus consejos me han sacado de algún embrollo informático, motivo por el que me alegro de contar con tu ayuda.

En segundo lugar agradecerte tu desinteresado consejo acerca de que ya has colgado soluciones acerca de macros semejantes en tus posts. Las he visto y probado te lo aseguro, pero he perdido tantísimo tiempo y paciencia frente al monitor, que aunque te aseguro que no me sobran el dinero, prefiero hacer esa donación antes que desquiciarme de nuevo. Además, como te comentaba antes, son muchos los consejos anteriores que pagarte... .

Por mi parte trato hecho Mauricio. Espero tus noticias para ver como arreglamos.

Un saludo.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Por cierto, si prefieres puedes enviarme un privado para concretar la forma de pago.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Hola...

Aquí la primer macro en su primero versión, solo tienes que establecer el rango de impresión para todas las hojas en la línea

Código: Seleccionar todo

Const AREA_IMPRESION As String = "A1:G30"
Si tus rangos de impresion son los mismos en todas las hojas, este es el mejor método, si por el contrario, estas áreas cambian en cada hoja, entonces hay que cambiar la logica, ya me diras.

La macro que tienes que ejecutar se llama ExportarPDF y la puedes llamar desde cualquier archivo u hoja de Calc.

Seguimos en contacto.

Saludos
Adjuntos
Macros foro.ods
(12.45 KiB) Descargado 4319 veces
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Genial Mauricio, intentaré probarlo este fin de semana que ahora mismo estoy liado, pero pinta bien.
El area de impresión cambia en cada hoja, es lo único malo.
Por cierto, cuando puedas hazme saber como pagarte todo esto por favor.

Tan pronto como lo pruebe te lo hago saber.

Un millón de gracias.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Listo, ahora funciona con cada área de impresión de cada hoja, ya no tienes que modificar nada...

Para la segunda macro, dices que es lo mismo, es decir, quieres que solo le agregue la opción de enviar por correo?

Para el pago, puedes hacerlo por PayPal en la siguiente página: http://www.universolibre.org/node/2 usa el botón que dice donar.

Saludos
Adjuntos
Macros foro.ods
(13.22 KiB) Descargado 2244 veces
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Mauricio, ¡eres genial tío!. Antes de que haya probado la primera macro, ya la has corregido.

Tan pronto la pruebe te comento como me ha ido, a ver si este fin de semana tengo un rato. Tienes que perdonar, pero estos días ando un poco liado y me faltan horas de sueño... .

Lo de la segunda macro no corre prisa, pero en un principio sería crear el pdf (si el nombre del archivo es el texto contenido en una celda ya sería perfecto) y automáticamente adjuntarlo a un correo nuevo del cliente de correo predeterminado. A partir de allí ya es cosa del usuario, ¿sería posible?.

Lo que si te prometo es que mañana mismo tienes esa donación de cien dolares por Paypal, especialmente si es para ayuda de una ONG.

Muchas gracias y seguimos en contacto Mauricio.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Hecho vía Paypal Mauricio. De todas formas compruébalo por si acaso.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Hola Compañero...

Si, esta aportación es para una ONG que funde en mi país, nos dedicamos a dar soporte técnico sin costo a otros ONGs, gracias por tu aportación, te confirmo que ya esta abonada...

Para la otra macro, es muy sencillo tomar el nombre de una celda para que sea el nombre del PDF resultante, solo dime que criterio seguimos, ¿siempre la misma celda, y si es así, cual?...

La macro que ya te hice, pregunta al usuario si quieres abrir el PDF resultante, ¿quieres que solo le agregue la opción de preguntar si quiere enviarla por correo o es una macro separada?...

Saludos y de nuevo gracias...
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Hola de nuevo Mauricio, ¿que tal todo?.

Todavía hoy acabo de probar la macro anterior y la función "exportar pdf" funciona de maravilla en windows. Imprime perfectamente el área de impresión y los cuadros de diálogos que has insertado son muy cómodos, gran trabajo.

Lo único malo es que, aunque en Windows funciona de maravilla, en Mac no me exporta el pdf correctamente. Todo funciona igual que en windows, pero en lugar de exportar el archivo en pdf, lo que hace es crear un archivo ods de la página donde se ejecutó la macro y que, sin saber porque, me lo abre con el "draw" ¿¿??. Te lo adjunto por si acaso te sirve de algo.

Si no tiene una fácil solución Mauricio no te preocupes en lo más mínimo Mauricio. El 99% de los futuros usuarios de esa hoja trabajan en Windows; pobrecitos... . Así que no tiene mayor problema.

En Ubuntu lo probaré esta tarde, pero viendo que eres amplio conocedor de Linux estoy seguro que estará perfecto.

En lo relativo al nombre de archivo del pdf, ¿sería posible que fuese el texto contenido en una celda de esa hoja?. Una buena posibilidad sería que fuese siempre el de una celda "remota" y que, en mi caso, no utilizaré (como la AA100 por ejemplo). Luego solo habrá que vincular el texto de la celda que contiene el nombre que me interese para el pdf a la celda AA100. No se si me he explicado muy bien Mauricio.

En la segunda macro que te comentaba, la que crea el mail con el pdf adjunto, si no tienes inconveniente me gustaría que fuese una macro separada.

En esta macro el nombre del archivo pdf sería el contenido en la fila AA100 por ejemplo. Lo que te comentaba antes.

Y una pregunta, pero esto ya es "de nota" y no quiero abusar Mauricio. ¿Sería posible que además de adjuntar el pdf, utilizase una celda para rellenar el destinatario del correo automáticamente y con otra celda rellenase el "subject·" del mail?. Vamos, que el usuario se encuentre con el E-mail redactado, el archivo pdf adjunto y el subject completo. Vamos, que el usuario revise el correo y solo tenga que pulsar el "send".

Esto último supongo que no será fácil ya que entramos en la configuración del correo electrónico predeterminado del usuario, ¿no?. Te lo comento solo por ver si es posible, aunque personalmente me sorprendería mucho.

Eso es todo Mauricio, una vez más muchísimas gracias por tu gran ayuda y trabajo. Un fuerte saludo desde Galicia.
Adjuntos
Macros foro.ods
Exportación a pdf desde Mac con la macro
(15.54 KiB) Descargado 1413 veces
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Hola...

La macro la he desarrollado bajo ArchLinux, no "deberías" tener problemas en otras distribuciones, ya probaste en Windows, desafortunadamente no tengo un MAC donde poder probar para ver por que no trabaja ahí...

En relación a las macros y para poder finiquitarlo lo más pronto posible, tratemos de separar los puntos...

1.- Primer macro que exporta a PDF, ¿esta la podemos dar por terminada?, tengo un poco de duda respecto a si en esta también quieres tomar el nombre de una celda, no veo el caso soliciar al usuario lugar y nombre, si se va a tomar de una celda, por favor, aclareme esto...

2.- Respecto a la segunda, que exporta y adjunta, quiero saber si... ¿se le solicitará al usuario lugar y nombre?, si no es necesario conservar el PDF podemos; generar el PDF con el nombre de usa celda en concreto (AA100) y guardarlo en la carpeta temporal solo mientras se adjunta el correo, y si, es posible establecer el campo destinatario y con copia (CC), no así el Subject, esto si tendría que capturarlo el usuario...

Por favor, espero tus comentarios concretos para poder terminar las macros.

Un abrazo
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Hola de nuevo Mauricio.

En lo relativo a las macro para exportar el pdf el único problema que he visto en Windows es que el archivo final no tiene la extensión pdf, motivo por el que Windows te pregunta con que aplicación quieres abrir el archivo al no tener la extensión pdf anexa. Te adjunto el archivo que me genera para que le eches un vistazo.

Acerca de las dudas de las dos macros te comento:

1- Macro para solo "exportar en pdf": lo de antes, lo único que le falta es que el nombre de archivo tenga la extensión .pdf a continuación. Por lo demás es perfecta Mauricio, pregunta donde se va a guardar y el nombre del archivo; además tus comentarios adicionales son de agradecer.

2- Macro "exportar y adjuntar al correo": tu idea es perfecta. No necesito que guarden el pdf (por lo se puede guardar en temporales), el nombre del pdf lo puede tomar de la celda AA100.
El campo del destinatario lo puede tomar de cualquier otra celda "apartada", por ejemplo la AA99 o cualquier otra que consideres. No es necesario incluir un cc o un bcc, con un destinatario es suficiente.

Resumiendo, si el usuario se encuentra con el mail creado, el pdf adjunto (con el nombre de la celda AA100), la dirección del destinatario escrita y que solo tenga que escribir el subject y darle al botón de "enviar", entonces Mauricio esto será el mayor éxito informático desde la creación del Tetris.

Un saludo desde Galicia.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

Opss!!, antes no me adjuntó el archivo que te comentaba. Sospecho que será porque no lleva extensión.

Lo adjunto ahora comprimido en un zip para que la web no me la rechace.
Adjuntos
Hoja3.zip
Archivo PDF generado con la macro ExportarPDF
(12 KiB) Descargado 2018 veces
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Hola...

Tu archivo lo pude abrir sin problemas, aun sin extensión, el visor que uso detecta el tipo de archivo de acuerdo a su estructura, no de acuerdo a la extensión.

1.- Para la primer macro (de hecho para las dos), he agregado una comprobación de extensión, nos aseguramos de que tenga extension PDF, probrecito Win, no sabe cuando no la tiene, jejejeje...

2.- Para esta macro, tomamos como nombre del archivo PDF la celda AA100 de la hoja activa, puedes cambiar esta celda cuando quieras, solo editas la constante correspondiente, si la celda esta vacia, te pondra el nombre ArchivoPDF[1-1000], es decir, con un número aleatorio entre 1 y 1000, el destinatario lo toma de la celda AA99 de la hoja activa, esto quiere decir que puedes establecer nombres de archivos y destinatarios en cada hoja, igual puedes cambiar las constantes como el tema (asunto) del correo. He agregado una validacion para saber si estamos en Linux o Windows, las he probado en estos dos entornos.

Por favor, checalas y confirmame, si no hay nada que corregir, damos por terminado y cumplido el compromiso.

Un abrazo
Adjuntos
Macros foro.ods
(13.99 KiB) Descargado 2185 veces
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Galle43
Mensajes: 13
Registrado: Mar Ago 23, 2011 2:56 am

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por Galle43 »

GENIAL!!!.

He probado por encima las dos Macros en mi ordenador y en mi windows funcionan muy por encima de mis expectativas iniciales, una maravilla. La exportación a Pdf funciona y ahora ya le añade la extensión pdf al archivo; pero lo que me ha dejado muy, pero que muy contento es la opción de adjuntar el pdf al correo, perfecta.

La macro abrió perfectamente mi cliente de correo predeterminado (Thunderbird) y creó el correo y el pdf con la información contenida en las celdas que hablamos. Los cuadros de diálogo ya he visto que puedo editarlos yo fácilmente para ponerlos un poco mas encajado hacia mis necesidades. Espero no estropear nada... .

El pdf creado es perfecto ya que solo incluye el área de impresión donde se activa (esto me dio algún problema al principio, hasta que me di cuenta que tenía mal definida el área de impresión, mi culpa...), y tu idea del numero aleatorio encaja perfectamente en lo que busco.

El único error que le he visto (por decir algo) es en Mac. La opción exportar pdf funciona, aunque tiene la tontería que también incluye la extensión ods antes de pdf si el usuario no cambia el nombre de archivo(macrosforo.ods.pdf); nada importante Mauricio.
La opción Adjuntarpdf es la que falla ya que no consigue abrir el cliente de correo predeterminado y ahí se queda. De todas formas y como ya te comenté no me importa mucho como funcione esto en Mac OS X, no te preocupes en lo más mínimo.

Resumiendo Mauricio; un gran y excepcional trabajo del que te doy las gracias enormemente, además de felicitarte una vez más por tu labor en la ONG que desarrollas. Un gran trato Mauricio del que me siento muy contento del resultado.

Gracias por todo y un auténtico placer.
Libreoffice 3.4
Nuevo en Mac. Digan lo que digan los maqueros, OS X no es para tanto...
vicenbmw
Mensajes: 3
Registrado: Mar Mar 13, 2012 3:25 pm

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por vicenbmw »

Acabo de registrarme y no veo la macro que estas generando para enviar una seleccion de una hoja excel por correo
office 2003
vicenbmw
Mensajes: 3
Registrado: Mar Mar 13, 2012 3:25 pm

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por vicenbmw »

Hola mauricio puedes ayudarme en ver donde esta la macro que has diseñado?
office 2003
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Macro para imprimir PDF de la hoja donde se active la ma

Mensaje por mauricio »

Es que no hago macros para Excel, la que esta en este hilo es para OpenOffice.org/LibreOffice, si te sirve, puedes descargarla sin restricciones...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
vicenbmw
Mensajes: 3
Registrado: Mar Mar 13, 2012 3:25 pm

Re: [RESUELTO] Macro imprimir PDF en hoja donde se active

Mensaje por vicenbmw »

pero como la descargo
office 2003
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: [RESUELTO] Macro imprimir PDF en hoja donde se active

Mensaje por mauricio »

______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
kersian
Mensajes: 18
Registrado: Vie Ene 03, 2014 8:01 pm

Re: [RESUELTO] Macro imprimir PDF en hoja donde se active

Mensaje por kersian »

Mauricio disculpa que reviva el post, pero es posible exportar a PDF solo una hoja y no todo el archivo?
Gracias!
OpenOffice 3.1 en Windows Vista
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: [RESUELTO] Macro imprimir PDF en hoja donde se active

Mensaje por mauricio »

Si, si es posible...
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder