Mensaje "Espere mientras se ejecuta la macro..."

Buscando entre las preguntas he encontrado una duda que tenia, no mostrar el movimiento entre pestañas que hay cuando ejecutas alguna macro...
                      Application.ScreenUpdating = False
Mi pregunta es para poder ampliar eso:
Hay alguna manera de que, mientras va actualizando el archivo, ¿me aparezca un mensaje? El mensaje me refiero a "Un momento, estamos actualizando la base de datos".

1 respuesta

Respuesta
1
Tiene que crear un formulario adicional, el cual va a llamar la macro que actualiza la bases de datos, y una macro adicional que llame a dicho formulario.
Sub macroINICIAL()
UserForm1.Show
End Sub
'En el código del formulario colocas esto:
Private Sub UserForm_Activate()
MsgBox "Vamos a comenzar"
Application.Run "actualizarBD"
'ActualizarBD corresponde a la macro que se va a ejecutar, la que INICIA
'la actualización de la bases de datos.
Unload UserForm1
'cerramos el formulario
End Sub
Buenas,
No consigo hacerlo. Creo que lo pongo todo tal y como describes, pero no me sale.
Cuando le doy al botón para que lo ejecute, me saca el formulario, pero hasta que no cierro el formulario, no me comienza con la macro de actualizar la base de datos.
De todas maneras no se si he utilizado bien el código que me has indicado, lo de :
Application.Run "actualizarBD"
'ActualizarBD corresponde a la macro que se va a ejecutar, la que INICIA
'la actualización de la bases de datos.
Unload UserForm1
'cerramos el formulario
End Sub
En que SUB lo he de incluir? He probado varias opciones pero no consigo hacerlo funcionar... :(
Gracias por la respuesta!
'Este módulo se ejecuta cuando el formulario se abre: (el evento Activate de tu formulario)
Private Sub UserForm_Activate()
'por consiguiente aca dentro es donde va tu código para actualizar
'la base de datos, pero como imagino que debe ser muy largo,
'es más fácil llamar la macro desde aca, que copiar su código contenido.
'Y para llamar la macro que contiene el código de actualización, colocas:
Application.Run "aqui_va_el_nombre_de_tu_macro"
'y esta instrucción:
Unload UserForm1
'cerrará el formulario, luego de ejecutar lo anterior.
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas