Como maximizar formulario Excel al iniciar





Me preguntan en un foro, como maximizar un formulario de Excel al iniciar, este post responde la pregunta como maximizar un formulario de VBA de Excel al iniciar, al maximizarse queda la aplicación de Excel oculta; si requieres minimizar un formulario de Excel sigue el link; en post anteriores se presentaron otras macros que trabajan con formularios como son: como eliminar el botón X o cerrar de un formulario, como eliminar la barra de titulos de los formularios de VBA, como anular o inutilizar el botón cerrar o X de un formulario de Excel, como agregar un botón maximizar y minimizar en la barra de titulos de un formulario de Excel.

Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.

  

El ejemplo que se puede descargar desde el final del post, permite maximizar un formulario al iniciar, en otras palabras cuando el código de VBA llama o carga el formulario, directamente aparece maximizado.

El ejemplo también incluye en el formulario los botones maximizar y minimizar, ya que de lo contrario no habría otra forma de volver el formulario al estado original, quedando como única alternativa cerrar, para salvar este inconveniente se agregan los botones de maximizar y minimizar para mostrar el formulario maximizado, minimizado o en tamaño original.

El vídeo que sigue muestra una explicación más detallada mostrando el funcionamiento de la macro presentada, recomiendo observar para una más fácil comprensión de la macro; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como  por ejemplo como crear cartas en Word desde Excelbuscar en listbox mientras escribes en textbox, como ingresar solo texto en textboxconectar Excel con Access, libro con url de todas las macros de esta web con buscador incluido y cientos de ejemplos.






Código que se inserta en un formulario




Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Const WS_MINIMIZEBOX As Long = &H20000
Private Const WS_MAXIMIZEBOX As Long = &H10000
Private Const GWL_STYLE As Long = (-16)
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Const maxformvba = 3
Dim hh As Long

Private Sub CommandButton1_Click()
ShowWindow hh, maxformvba
End Sub
Private Sub UserForm_Activate()
ShowWindow hh, maxformvba
End Sub

Private Sub UserForm_Initialize()
    Dim lngMyHandle As Long, lngCurrentStyle As Long, lngNewStyle As Long
    If Application.Version < 9 Then
        lngMyHandle = FindWindow("THUNDERXFRAME", Me.Caption)
    Else
        lngMyHandle = FindWindow("THUNDERDFRAME", Me.Caption)
    End If
    lngCurrentStyle = GetWindowLong(lngMyHandle, GWL_STYLE)
    lngNewStyle = lngCurrentStyle Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX
    SetWindowLong lngMyHandle, GWL_STYLE, lngNewStyle
hh = FindWindow(vbNullString, Me.Caption)
End Sub


Código que se inserta en un módulo

Sub muestra()
UserForm1.Show
End Sub




Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.


If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.


Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends