Ocultar proceso

Hola, tengo la siguiente duda:
Tengo una macro en Vba sencilla ya que básicamente se limita a abrir una serie de archivos copiar datos y traerlos al primero. El problema es el siguiente, mientras se está ejecutando la macro, aunque el proceso es rápido, se ve cómo abre esos archivos, selecciona celdas, copia pega etc. Lo que quiero es ocultarlo, es decir que el usuario dé al botón que inicie la macro pero no vea nada de eso.
He probado a crear un formulario y anteponerlo en primer plano para que la macro trabaje en segundo plano pero una de dos si el formulario es modal la macro se interrumpe, y si no lo es éste no se visualiza.
Resumiendo lo que quiero es algo parecido a una "pantalla" (bien podría ser una hoja de calculo vacía) que diga "POR FAVOR ESPERE" o algo similar, cualquier cosa que enmascare los pasos que hace la macro. He intentado mirar la ayuda a ver si me dan pistas pero nada.
Gracias de antemano.
PD puedes ver en la lista de expertos que voy detrás de ti, espero que no pienses que esta pregunta es algún tipo de "trampa", en serio es una duda que tengo desde hace tiempo y ya no se me ocurre nada. Prometo puntuarte bien.
1

1 Respuesta

200.775 pts.
Te aseguro que lo que menos me interesa son los puntos, creo que lo importante es ayudarnos entre todos, a ver si te sirve esto, saludos...
Option Explicit
Private Sub OcultarProceso()
'Aqui establecemos un mensaje en la barra de estado de Excel
Application.StatusBar = "Espera estoy trabajando..."
'Aqui desactivamos la actualziación en pantalla, con lo cual ya NO
'veraz lo que hace tu macro...
Application.ScreenUpdating = False
'*********
'Aqui iria todo el codigo que quieras que no se vea el proceso
'*********
'Aqui reactivamos la actualziacion en pantalla
Application.ScreenUpdating = True
'Devolvemos a Excel el control de la barra de estado
Application.StatusBar = False
'Notificamos al usuario que todo acabo
MsgBox "Proceso terminado"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas