mostrar barra de progreso en una macro VBA en excell

06/09/2005 - 13:56 por .·:m·a·r·l·a:·. | Informe spam
Hola a todos

tengo algunas macros que me llevan un cuanto tiempo en ejecutarse y muchas
veces no se si han entrado en un bucle infinito o estan funcionando

asi que queria programar un cuadro de dialogo donde me muestre por ejemplo
en que paso esta y el tanto por ciento (que ya calcularia yo de determinada
forma)

utilizo la funcion screenupdating = false para evitar el parpadeo, con lo
cual la idea de escribir en una celda queda anulada

alguien podria pasarme un ejemplillo o una pegueña ayuda de como hacerlo ??

tambien me seria interesante que en caso de error quedara dicho cuadro de
dialogo abierto, para saber asi en que paso se produjo dicho error

gracias por adelantado

Preguntas similare

Leer las respuestas

#1 pepe
06/09/2005 - 14:16 | Informe spam
Tienes que incorporar una barra de progreso en la rutina.
Suponiendo que la barra la llames progressbar1, esto podría servir:

ProgressBar1.Min = 1
ProgressBar1.Max = Total
ProgressBar1.Visible = True
For Parcial = 1 To Total
ProgressBar1.Value = Parcial
.
next



".·:m·a·r·l·a:·." escribió en el mensaje
news:
Hola a todos

tengo algunas macros que me llevan un cuanto tiempo en ejecutarse y muchas
veces no se si han entrado en un bucle infinito o estan funcionando

asi que queria programar un cuadro de dialogo donde me muestre por ejemplo
en que paso esta y el tanto por ciento (que ya calcularia yo de
determinada
forma)

utilizo la funcion screenupdating = false para evitar el parpadeo, con lo
cual la idea de escribir en una celda queda anulada

alguien podria pasarme un ejemplillo o una pegueña ayuda de como hacerlo
??

tambien me seria interesante que en caso de error quedara dicho cuadro de
dialogo abierto, para saber asi en que paso se produjo dicho error

gracias por adelantado


Respuesta Responder a este mensaje
#2 .·:m·a·r·l·a:·.
06/09/2005 - 16:37 | Informe spam
muchas gracias a ambos

la idea de gustabo me ha gustado mucho, la implementare a ver que tal

pepe, con la tuya tendria que crear un userform y colocar esta en el
userform, no ??, no afectaria que el screen updating este a FALSE ?? o tengo
que redibujar el user form cada vez que lo llamo ??

gracias a ambos


"pepe" wrote in message
news:
Tienes que incorporar una barra de progreso en la rutina.
Suponiendo que la barra la llames progressbar1, esto podría servir:

ProgressBar1.Min = 1
ProgressBar1.Max = Total
ProgressBar1.Visible = True
For Parcial = 1 To Total
ProgressBar1.Value = Parcial
.
next



".·:m·a·r·l·a:·." escribió en el mensaje
news:
> Hola a todos
>
> tengo algunas macros que me llevan un cuanto tiempo en ejecutarse y


muchas
> veces no se si han entrado en un bucle infinito o estan funcionando
>
> asi que queria programar un cuadro de dialogo donde me muestre por


ejemplo
> en que paso esta y el tanto por ciento (que ya calcularia yo de
> determinada
> forma)
>
> utilizo la funcion screenupdating = false para evitar el parpadeo, con


lo
> cual la idea de escribir en una celda queda anulada
>
> alguien podria pasarme un ejemplillo o una pegueña ayuda de como hacerlo
> ??
>
> tambien me seria interesante que en caso de error quedara dicho cuadro


de
> dialogo abierto, para saber asi en que paso se produjo dicho error
>
> gracias por adelantado
>
>


Respuesta Responder a este mensaje
#3 pepe
06/09/2005 - 18:17 | Informe spam
Sí tendrías que utilizar un userform para poner la barra de progreso,
tambien otros botones, mensajes, instrucciones, opciones...

La actualizacion de la pantalla, mejor en falso, para acelerar el código.
El userform lo muestras y lo ocultas cuando te convenga.




".·:m·a·r·l·a:·." escribió en el mensaje
news:%
muchas gracias a ambos

la idea de gustabo me ha gustado mucho, la implementare a ver que tal

pepe, con la tuya tendria que crear un userform y colocar esta en el
userform, no ??, no afectaria que el screen updating este a FALSE ?? o
tengo
que redibujar el user form cada vez que lo llamo ??

gracias a ambos


"pepe" wrote in message
news:
Tienes que incorporar una barra de progreso en la rutina.
Suponiendo que la barra la llames progressbar1, esto podría servir:

ProgressBar1.Min = 1
ProgressBar1.Max = Total
ProgressBar1.Visible = True
For Parcial = 1 To Total
ProgressBar1.Value = Parcial
.
next



".·:m·a·r·l·a:·." escribió en el mensaje
news:
> Hola a todos
>
> tengo algunas macros que me llevan un cuanto tiempo en ejecutarse y


muchas
> veces no se si han entrado en un bucle infinito o estan funcionando
>
> asi que queria programar un cuadro de dialogo donde me muestre por


ejemplo
> en que paso esta y el tanto por ciento (que ya calcularia yo de
> determinada
> forma)
>
> utilizo la funcion screenupdating = false para evitar el parpadeo, con


lo
> cual la idea de escribir en una celda queda anulada
>
> alguien podria pasarme un ejemplillo o una pegueña ayuda de como
> hacerlo
> ??
>
> tambien me seria interesante que en caso de error quedara dicho cuadro


de
> dialogo abierto, para saber asi en que paso se produjo dicho error
>
> gracias por adelantado
>
>






Respuesta Responder a este mensaje
#4 KL
06/09/2005 - 18:31 | Informe spam
ma opciones:
http://j-walk.com/ss/excel/tips/tip34.htm
http://www.cpearson.com/excel/progress.htm
http://www.andypope.info/vba/pmeter.htm
http://www.erlandsendata.no/english...atusbarmsg
http://www.enhanceddatasystems.com/...essBar.htm

Saludos,
KL



".·:m·a·r·l·a:·." wrote in message
news:
Hola a todos

tengo algunas macros que me llevan un cuanto tiempo en ejecutarse y muchas
veces no se si han entrado en un bucle infinito o estan funcionando

asi que queria programar un cuadro de dialogo donde me muestre por ejemplo
en que paso esta y el tanto por ciento (que ya calcularia yo de
determinada
forma)

utilizo la funcion screenupdating = false para evitar el parpadeo, con lo
cual la idea de escribir en una celda queda anulada

alguien podria pasarme un ejemplillo o una pegueña ayuda de como hacerlo
??

tambien me seria interesante que en caso de error quedara dicho cuadro de
dialogo abierto, para saber asi en que paso se produjo dicho error

gracias por adelantado


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida