Cómo hacer temporizaciones en milisegundos usando VBA?

26/04/2007 - 17:25 por Leonardo | Informe spam
Hola. Necesito hacer un tablero tipo publik, que presente mensajes
desplazándose por una ventana, como un display. El asunto no tiene el
menor inconveniente, pero para hacer la rotación del mensaje, es
necesario hacer temporizaciones MENORES a 1 segundo (o sea no sirve
usar Timer, que tiene resolución de un segundo). Algo así como DELAY
en Pascal, que temporizaba en milisegundos. Alguien conoce como hacer
esto?

Gracias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
27/04/2007 - 03:33 | Informe spam
hola, Leonardo !

Necesito... hacer temporizaciones MENORES a 1 segundo
(o sea no sirve usar Timer, que tiene resolucion de un segundo)...



1) prueba haciendo una 'llamada' a la API de windows 'Sleep' en el modulo/libreria 'Kernel32'
para 'manipular' un retardo en la secuencia ->por milesimas de segundo<-
[probablemente] debieras agregar una instruccion 'DoEvents' [para no 'interferir' con otros procesos]
-> [encontraras la informacion -traducida al castellano- en...]
WD97 Como Implementar un Retardo en Visual Basic para Aplicaciones
http://support.microsoft.com/suppor...2/1/50.asp

2) o puedes hacer pruebas con codigos +/- como lo siguiente:

Private Declare Sub Retardo Lib "kernel32" Alias "Sleep" (ByVal Milisegundos As Long)

Sub Cada_X_Segundos()
Dim Segundos As Integer
For Segundos = 1 To 5
Retardo 1000 ' <= 1000, 'equivale' a 1 segundo [mil milisegundos] ;) '
ActiveCell.Font.Size = ActiveCell.Font.Size + 1
' o llamas al procedimiento para ... ??? '
Next
End Sub

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