Cómo actualizar imágenes en un formulario Access al pasarlo a PDF

Estoy trabajando en una base de datos Access y he generado un formulario con un cuadro de imagen que mediante un poco de VBA muestra una imagen mediante una ruta. Ahora quiero exportarlo pero en el PDF que genera siempre aparece la misma imagen. Parece que no se actualiza...

1 respuesta

Respuesta
1

¿Cómo estás haciendo ahora mismo la exportación y la carga de la imagen?

Antes de exportar a pdf asegúrate de que cargas la imagen en el control imagen. Yo nunca me encontré con ese problema y trabajo siempre con imágenes vinculadas por código.

Ya me dirás algo...

Un saludo


Este es el código que pongo en la hoja de propiedades del formulario, en eventos.

Private Sub Form_Current()
folklore.Picture = IMAGEN
End Sub

Es sencillo pero funciona. Cada página del formulario me muestra una foto diferente que tengo localizadas en C:.

Mi problema es que al tratar de exportar las 100 fotos con su propia ficha (formulario) a un PDF, se exporta pero siempre sale la misma foto.

No se si me he explicado bien en el anterior mensaje, "folklore" es nombre del cuadro de imagen; e IMAGEN es un campo de texto de la tabla donde tengo escritas las rutas a C:\.

Imagino por dónde te viene el problema, pero para confirmarlo, necesito saber:

-¿Cómo exportas a pdf: código (cual?), impresora virtual (¿pdfCreator o similar)...?

-La imagen que se te exporta al pdf (y se repite) ¿Es la del registro que tienes en pantalla?

-Si exportas un único registro (el que sea), ¿la imagen es correcta?

Mi suposición es que intentas exportar todos los registros del formulario en un solo paso, y ahí está el problema: los formularios están pensados para introducir datos en la BD, y no para imprimir los registros, pues para eso están los informes.

La solución más fácil sería que creases un informe con el mismo diseño, y en el evento "Al dar formato" de la sección donde tengas tu cuadro de imagen (normalmente la sección "Detalle") pongas el mismo código que tienes para cargar la imagen. De esta forma te funcionará seguro.

¡Gracias! Voy a intentarlo, mañana te digo. 

Hola Sveinbjorn:

A ver si me puedes ayudar....

-¿Cómo exportas a pdf: código (cual?), impresora virtual (¿pdfCreator o similar)...?

No utilizo código para exportar a PDF, ¿debería?. Lo que utilizo es:

1: El botón de exportar de access: DATOS EXTERNOS - EXPORTAR - PDF O XPS

2: Mediante un botón de imprimir formulario, y entonces elijo impresora virtual de las dos que tengo isntaladas, scansoft PDF create, gaaiho PDF. Pero no sale en ninguna de las dos.

-La imagen que se te exporta al pdf (y se repite) ¿Es la del registro que tienes en pantalla?

La imagen que se exporta es exactamente el registro activo en pantalla.

-Si exportas un único registro (el que sea), ¿la imagen es correcta?

Sí, la imagen es correcta.

He intentado hacer un informe con el mismo código que pongo a los informes, como te dije antes, en PROPIEDADES DEL INFORME - EVENTOS - AL HACER CLICK...  pero no funciona (ufff).

Gracias por tu atención

Me había equivocado, he puesto el código en: (1º selecciono el informe en el cuadrado de la esquina superior izquierda) -> PROPIEDADES DEL INFORME -> EVENTOS ->... -> AL ACTIVAR REGISTRO -> GENERADOR DE CÓDIGO.

No he encontrado el evento "Al dar formato"

Por cierto, ¿a qué te refieres con la sección "Detalle"?

Los informes, como los formularios tienes varias secciones: encabezado de página, encabezado de formulario/informe, detalle, pie de página, pie de formulario/informe.

La sección detalle es la central.

Haz lo siguiente: abre tu informe en vista diseño, y vete al generador de VBA. Luego, en el desplegable de arriba a la izquierda, busca "Detalle", y en el de la derecha, "Format". Ahí es donde tienes que poner el código que te carga la imagen:

Aquí puedes ver la sección detalle:

Si pulsas en el cuadradito que está junto a ella en la regla vertical y sacas sus propiedades, encontrarás también el evento.

Ya me dirás si lo resuelves, si no te envío un ejemplo.

Un saludo


Lo he seguido tal como me dices y no sucede nada. 

¿tal vez el VBA no es el adecuado?

El informe lo tienes que abrir en Vista preliminar, para que se ejecute el código. A ver si lo estás abriendo en vista informes u otra...

No se visualiza en ninguna de las opciones, tampoco al exportarlo.

¡Qué frustrante, algo debo estar haciendo mal!

Me dice que hay un error y no se puede ejecutar una macro porque no encuentra el campo IMAGEN

Eso ya es problema de nombres o de diseño. Entiendo que IMAGEN es el nombre de un campo de la tabla. Pregunta : ¿Lo tienes en el informe, aunque sea oculto? ¿Con ese nombre?

Si quieres envíame una copia de tu BD con un par de registros inventados (y unas imágenes) y le echo un vistazo a ver dónde está el error.

Puedes enviarlo todo comprimido a: [email protected]

Vale ¡Gracias!

Te dejo aquí el archivo "corregido": http://filebig.net/files/NZhANmZJnA 

La contraseña es el nombre de tu dirección de email (lo que va antes de la @)

Te he modificado el código ligeramente para que si no hay nada en el cuadro de texto no te cargue nada en la imagen y por ejemplo, no te de error al ir a un registro nuevo.

Realmente el código de tu informe funciona, pero no veías nada en la primera página porque el cuadro que pusiste como borde es más grande que el alto de la página, y se te mostraba en la página 2 del informe, pero la imagen sí la cargaba bien (en vista preliminar, para que actúe el código)

Échale un ojo a este enlace: Imágenes en informes

Un saludo y felices fiestas!


Hola Sveinbjorn:

Miraré el link que me has pasado sobre imágenes.

y ¡gracias! ¡gracias! ¡gracias! por solucionarme el problema.

¡Igualmente muy Felices Fiestas!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas