Barra de progreso mientras carga informe Access

He buscado por todos lados y no lo he conseguido por lo que me atrevo a oensar que no es posible. Tengo una BD en Access que abre un informe el cual es bastante espeso. Por consiguiente tarda un poco en cargar y me gustaría poner una barra de progreso que informe al usuario a la vez que evita que se impaciente. También me gustaría qie al terminar se cargarse el informe apareciese un msgbox indicando que la carga ha finalizado.

Respuesta
2

Estos enlaces, a ver si te resuelven el problema:

http://jmmirallesortega.wixsite.com/accessyvba/ejemplos-y-descargas  (ejemplo 24)

https://sites.google.com/site/jjjt1973/ejemplos-access  (ejemplo 91)

http://siliconproject.com.ar/neckkito/index.php/component/content/article/97-ejemplos-explicados/ejemplos-especiales/319-porcentaje-de-progreso 

http://siliconproject.com.ar/neckkito/index.php/ejemplos-explicados/todos/95-ejemplos-explicados/ejemplos-de-codigo/278-procesando-procesando 

Y estos son los que conozco y he probado, seguro que hay muchos más... XD

Un saludo.


Hola. Muchas gracias por la respuesta. He revisado cada uno de los casos y los he probado a integrar en mi BD pero sin resultado. Es problema es que los ejemplos están orientados a procesos cíclucos (introducir/recorrer registros en una tabla, colorear todos los campos de un informe, etc.). Mi problema es que para lo que yo quiero la información no es un proceso cíclico sino la generación del propio informe que al ser muy pesado tarda un poquito en aparecer en pantalla dando la sensación de que la BD se ha quedado colgada.

Yo usaría el ejemplo "procesando procesando" de Neckkito de la siguiente forma:

Abres el formulario "procesando", abres el informe => como el informe dices que tarda, se verá el formulario "procesando...".

Cuando el informe se cargue, en el evento Load, le dices que cierre el formulario.

Nada... cuando lo llamo a la vez que el informe se queda "congelado" y el resultado es peor porque aparece el formulario en negro hasta que se abre el informe. Incluso he puesto un lapso tiempo de espera para que abra el formulario "En Proceso" y más tarde ejecute el informe pero el resultado es el mismo, es decir, el formulario "En Proceso" se queda congelado hasta que se abre el informe:

DoCmd.OpenForm "frmEn_Proceso"
'//LLAMO A UN TIEMPO DE ESPERA ANTES DE ABRIR EL INFORME PARA QUE SE MUESTRE EL FORMULARIO EN_PROCESO:
Dim Comienzo1 As Double
Comienzo1 = Timer
Do While Timer < Comienzo1 + 1
DoEvents
Loop

DoCmd.OpenReport "Informe", acViewPreview

Una vez más, muchísimas gracias por tu ayuda.

Llevo un buen rato probando distintas variaciones y no consigo hacer lo que buscas.

Una barra de progreso no te servirá, porque, a priori, no sabes el tiempo que te va a tardar en abrir el informe.

La única solución que me queda por ofrecerte, es que justo antes de abrir el informe abras un formulario (estático, es decir, sin efectos "visuales") que muestre la leyenda "Se está ejecutando su petición..." o el mensaje que creas más conveniente...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas