Contenido
El evento Initialize en VBA es un evento especial que se dispara cuando un formulario (UserForm) se crea pero antes de que se muestre al usuario. Este evento es útil para preparar el formulario antes de que sea visible, como cargar datos en un ComboBox, configurar valores predeterminados para controles o realizar cualquier otra inicialización que sea necesaria.
Para usar el evento Initialize en VBA, sigue estos pasos:
- Abre el Editor de VBA (Visual Basic for Applications) presionando ALT+F11 en Excel.
- En el Proyecto de VBA, encuentra el UserForm para el que quieres configurar el evento Initialize.
- Haz doble clic en el UserForm para abrir la ventana de código.
- En la ventana de código, selecciona UserForm en el menú desplegable de la esquina superior izquierda (si no está seleccionado ya).
- En el menú desplegable de la esquina superior derecha, selecciona el evento Initialize.
- Escribe el código que quieres ejecutar cuando el evento Initialize se dispare.
Aquí tienes un ejemplo de cómo se vería el código:
Private Sub UserForm_Initialize()
' Código para inicializar el formulario
' Por ejemplo, establecer un valor predeterminado para un TextBox
Me.TextBox1.Value = "Algún valor inicial"
' O cargar datos en un ComboBox
Me.ComboBox1.AddItem "Opción 1"
Me.ComboBox1.AddItem "Opción 2"
Me.ComboBox1.AddItem "Opción 3"
' Otras configuraciones iniciales...
End Sub
El código dentro de este procedimiento de evento se ejecutará cada vez que se cree una nueva instancia del UserForm antes de mostrarlo al usuario.
Además, recuerda que para mostrar el formulario desde otro módulo de código o desde una macro, usarías algo como esto:
Sub MostrarFormulario()
Dim miFormulario As New UserForm1
miFormulario.Show
End Sub
En este ejemplo, UserForm1 es el nombre de tu formulario. El evento Initialize para UserForm1 se disparará inmediatamente después de que se cree la instancia miFormulario y antes de que el formulario se muestre con el método .Show.