Cuando tiene una macro / código vba grande que necesita ejecutarse durante muchos minutos, puede cambiar el cursor al reloj de arena o al cursor de espera (según la configuración de su sistema) para el período en el que se está ejecutando la macro. Una vez que se completa la macro, el cursor se puede restaurar al cursor predeterminado.

Este es un código de muestra que muestra cómo puede cambiar el cursor.

Opción explícita

_Sub macro1 () _

Application.Cursor = xlWait

‘ Codifique aquí

Application.Cursor = xlDefault

End Sub Después de las declaraciones dim (este código de muestra aún no tiene ninguna), configuramos Application.Cursor = xlWait * al comienzo del código.

  • Luego puede incluir cualquier código que necesite ejecutar. Si necesita llamar a varios subs / procedimientos, puede hacerlo aquí o simplemente ingresar el código completo aquí.

Luego, justo antes de la instrucción End Sub, debe restablecer el cursor al valor predeterminado. Hacemos esto usando la línea Application.Cursor = xlDefault *

__

Puede incluir todas las demás declaraciones que necesite, como Application.ScreenUpdating = False_or_Application.DisplayAlerts = False _ junto con _Application.Cursor = xlWait_statement. De manera similar, puede incluir _Application.ScreenUpdating = True o Application.DisplayAlerts = True junto con la instrucción Application.Cursor = xlDefault *.

__

  • Para copiar este código, presione las teclas Alt + F11 en el teclado. Esto abrirá el módulo de código. En el lado izquierdo verá Objetos de Microsoft Excel. Haga clic derecho y seleccione Insertar y luego seleccione Módulo. Copie el código en la ventana de código de la derecha.