Hola que tal:
Deseo obtener en tiempo de ejecucion los segundos que se tarda en terminar de ejecutarse una macro y que me muestre en la barra de estado el tiempo restante como un conteo regresivo para que finalice.
Por ejemplo estoy haciendo una macro que demora regular tiempo por eso quiero que aparesca en la barra de estado este mensaje: Quedan 4 segundos para finalizar.
Gracias de antemano
medir el tiempo de ejecucion de una macro en excel
Hola, te doy mi opinión, (pero debe haber mejores), todo lo de la cuenta regresiva, me parece muy difícil, en aumento, puede ser, todo depende de tu macro, si hay bucles como un while o un for, es viable, de otra forma se complica. Te pongo una mini macro que muestra 1, 2, 3 etc. Hasta 10 en la barra de estado.
Sub MostrarTiempo()
Dim i As Long, x As Long
For i = 0 To 10
For x = 1 To 100000000
Next x
Application. StatusBar = i
Next i
MsgBox "Fin de la Macro", 64, ""
Application. StatusBar = ""
End Sub
Este link trata el tema pero esta en inglés y de eso no sé mucho:
Https://www.cpearson.com/excel/Progress. Htm
Ve si te sirve este ejemplo:
https://grupos.emagister.com/documento/barra_de_progreso/6610-440948
Para el timer esto bastara:
time1 = Timer
codigo
codigo
time2 = Timer
MsgBox Format(time2 - time1, "0. 00 \s\ec")
Armando el msgbox mostrará el tiempo total transcurrido, pero lo que yo interpreto es que muestre una cuenta regresiva del tiempo total obtenido a cero, y es eso lo que veo complicado.
En el link hay 2 ejemplos de los disponibles en el foro (hay otros mas), el timer es solo eso, un timer para medir tiempo de ejecucion, este es otro ejemplo de muchos disponibles en la red:
https://programminglibrary. Com/Programming%20Library/DOWNLOAD/Downloads. Html#DOWNLOAD6
Hola gracias por sus aportes me han servido de mucha utilidad estoy revisando los codigos de los ejemplos propuestos
Gracias
Francisco.