Retrasar una macro 0.25 segundos

Con esta línea retraso la macro 1 segundo:

Application. Wait (Now + TimeValue("00:00:01"))

Pero necesito retrasarla 0.25 segundos.

1 Respuesta

Respuesta
1

Para "frenar" tu código un par de segundos (o una fracción de segundos) puedes aplicar la siguiente rutina auxiliar:

Private Sub Retraso(ret As Single)
Dim nextTime As Single
nextTime = Timer + ret
Do While Timer < nextTime: DoEvents: Loop
End Sub

De modo que cuando lo requieras, haces simplemente:

Retraso 0.25

por ejemplo.

Bien Mario muchas gracias, no soy muy bueno en Vb y quizás por eso no te entendí.

Donde coloco el tiempo que quiero retrasar??? Donde coloco el código que me envías????

 Te explico mejor lo que quiero: hice en Excel una animación “cuadro por cuadro” y utilizo este código para retrasar cada movimiento un segundo:

 Application.Wait (Now + TimeValue("00:00:01"))

Pero resulta que la animación me queda muy lenta y quiero que el tiempo entre cuadro y cuadro sea por lo menos de 0.25 segundo o menos. Me puedes ayudar???

Pensé que había quedado claro que en lugar de:
Application. Wait (Now + TimeValue("00:00:01"))
Deberías poner:

Retraso 0.25

Re-lee mi mensaje previo y -creo- que no tendrás problemas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas