Otra pregunta sobre Macros

Fernando:
Gracias por la respuesta anterior ya envié el mensaje de agradecimiento por mail, otra consulta dime hay alguna forma de que al abrir el libro además de que se ejecute la macro( que en mi caso cuando abro el libro sale un formulario) no se vea la pantalla de Excel como fondo.
Gracias
Respuesta
1
Menos mal que phiciste otra pregunta. Vi la que formulaste al comentar la anterior pero no es posible responder a preguntas finalizadas, en este sitio.
O haces una pregunta nueva -como hiciste tu- o vuelves a preguntar sobre la anterior sin finalizarla hasta obtener la solución correspondiente.
Respecto a tu pregunta la secuencia que deberías incluir en la macro autoejecutable sería esta:
Userform1.Show
Application.WindowState = xlMinimized
Recuerda que, al descargar el formulario deberás restituir la ventana de MS Excel. Algo así como esto:
...
Unload Userform1
Application.WindowState = xlNormal
End Sub
Espero que esto, también funcione OK.
Si así fuera, ya sabes... ;)
Un abrazo!
Fernando
Disculpa, el orden de los faroles
Altera el alumbrado...
La secuencia correctqa es minimizar primero y mostrar el formulario después. Es decir:
Application.WindowState = xlMinimized
UserForm1.Show
Disculpa el lapsus...
Fernando:
Hice lo que me indicaste, yo ya había intentado hacerlo antes pero probé otra vez coloque:
Userform1.Show
Application.WindowState = xlMinimized
Cuando ejecuto el programa aparece el formulario pero no se minimiza el Excel, pero cuando cierro el formulario recién se minimiza la pantalla.
También intente hacerlo al revez:
Application.WindowState = xlMinimized
Userform1.Show
Pero el excel se minimiza y en la barra de windows Parpadea el programa y cuando le doy clic recién aparece el formulario solo, pero lo que yo deseo hacer es que el formulario aparezca directamente sin hacer clic en la pantalla minimizada de Excel.
Gracias por tu respuesta
Jery
En realidad, depende de qué aplicaciones tengas en ejecución al usar este macro. Le estaría faltando un "fondo" donde mostrarse.
A tal fin, modifiqué la macro para que oculte la pantalla del archivo y deje un fondo disponible para mostrar el formulario.
Este debería ser el código de lanzamiento del formulario:
Sub ShowMyForm()
Application.ScreenUpdating = False
' ActiveWindow.WindowState = xlMinimized
Application.DisplayFullScreen = True
Windows("TuArchivo.xls").Visible = False
Application.ScreenUpdating = True
UserForm1.Show
End Sub
Mientras que, al cerrar, deberás restituir el escenario con lo siguiente:
Private Sub CommandButton1_Click()
Unload Me
Application.ScreenUpdating = False
Application.DisplayFullScreen = False
Windows("TuArchivo.xls").Visible = True
Application.WindowState = xlMaximized
ActiveWindow.WindowState = xlMaximized
Application.ScreenUpdating = True
End Sub
Prueba con esto y comentame si funcionó.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas