Formulario de usuario de varias páginas de Excel VBA

Buenos días, soy Miguel y esta vez os traigo un nuevo artículo.

A continuación veremos un programa en Excel VBA que crea un formulario de usuario que contiene varias páginas. Este formulario de usuario también contiene imágenes.

El control de varias páginas contiene dos páginas. En la página 1, el usuario puede completar su información personal. En la página 2, el usuario puede indicar qué marco le gusta más.

Formulario de usuario página 1 Formulario de usuario página 2

Para crear este formulario de usuario, realice los siguientes pasos.

1. Abra el Editor de Visual Basic. Si el Explorador de proyectos no está visible, haga clic en Ver, Explorador de proyectos.

2. Haga clic en Insertar, formulario de usuario. Si la caja de herramientas no aparece automáticamente, haga clic en Ver, caja de herramientas. Su pantalla debe configurarse de la siguiente manera.

Visualización de la pantalla del formulario de usuario en Excel VBA

3. Agregue el control de varias páginas, las etiquetas, los cuadros de texto (el primero en la parte superior, el segundo debajo del primero), el marco, los botones de opción (el primero a la izquierda, el segundo a la derecha), el cuadro de lista, control de imagen y botón de comando. Una vez completado, el resultado debe ser consistente con la versión vacía del formulario de usuario que se muestra arriba. Por ejemplo, cree un control de varias páginas haciendo clic en Múltiples en la caja de herramientas. A continuación, puede arrastrar un control de varias páginas al formulario de usuario. Cuando llegue al marco de género, recuerde dibujarlo primero antes de colocar los dos botones de opción en él.

4. Puede cambiar los nombres y subtítulos de los controles. Los nombres se utilizan en el código Excel VBA. Los subtítulos son los que aparecen en pantalla. Es una buena práctica cambiar el nombre de los controles, pero no es necesario aquí porque solo tenemos algunos controles en este ejemplo. Para cambiar el título del formulario de usuario, pestañas de varias páginas, etiquetas, marco, botones de opción y botón de comando, haga clic en Ver, Ventana Propiedades y haga clic en cada control.

5. Para mostrar el formulario de usuario, coloque un botón de comando en su hoja de trabajo y agregue la siguiente línea de código:

Privado Sub CommandButton1_Click ()

UserForm1.Show

Aleta Sub

Ahora creemos el Sub UserForm_Initialize. Cuando utilice el método Show para el formulario de usuario, se ejecutará automáticamente.

6. Abra el Editor de Visual Basic.

7. En el Explorador de proyectos, haga clic con el botón secundario en UserForm1 y, a continuación, haga clic en Ver código.

8. Elija Formulario de usuario en la lista desplegable de la izquierda. Elija Inicializar en la lista desplegable de la derecha.

9. Agregue las siguientes líneas de código:

Privado Sub UserForm_Initialize ()

Con ListBox1
.AddItem "Montañas"
.AddItem "Puesta de sol"
.AddItem "Playa"
.AddItem "Invierno"
Aleta Con

Aleta Sub

Explicación: Se completará el cuadro de lista de la página 2.

Ahora hemos creado la primera parte del formulario de usuario. Incluso si parece que ya está ordenado, no pasará nada cuando seleccionamos un elemento del cuadro de lista o cuando hacemos clic en el botón Aceptar.

10. Descarga las imágenes (lado derecho de esta página) y agrégalas a "C: test "

11. En el Explorador de proyectos, haga doble clic en UserForm1.

12. Haga doble clic en el cuadro de lista.

13. Agregue las siguientes líneas de código:

Privado Sub ListBox1_Click ()

ListBox1.ListIndex = 0 Entonces

Image1.Picture = LoadPicture ("C: test Mountains.jpg")
Aleta

ListBox1.ListIndex = 1 Entonces

Image1.Picture = LoadPicture ("C: test Sunset.jpg")
Aleta

ListBox1.ListIndex = 2 Entonces

Image1.Picture = LoadPicture ("C: test Beach.jpg")
Aleta

ListBox1.ListIndex = 3 Entonces

Image1.Picture = LoadPicture ("C: test Winter.jpg")
Aleta

Aleta Sub

Explicación: Estas líneas de código cargan una imagen según el elemento seleccionado en el cuadro de lista.

14. Haga doble clic en el botón Aceptar.

15. Agregue las siguientes líneas de código:

Privado Sub CommandButton1_Click ()

Oscuro emptyFila Cómo Largo

Hoja1.Activa

emptyRow = WorksheetFunction.CountA (Range ("A: A")) + 1

Celdas (fila vacía, 1) .Value = TextBox1.Value
Celdas (emptyRow, 2) .Value = TextBox2.Value

OptionButton1.Value = Cierto Entonces

Celdas (fila vacía, 3) .Value = "Masculino"
Otra cosa

Celdas (emptyRow, 3) .Value = "Mujer"
Aleta

Celdas (fila vacía, 4) .Value = ListBox1.Value

Descargarme

Aleta Sub

Explicación: Primero, activamos Sheet1. A continuación, determinamos la fila vacía. La variable emptyRow es la primera fila vacía y aumenta cada vez que se agrega un registro. Luego transferimos la información del formulario de usuario a las columnas específicas en emptyRow. Finalmente, cerramos el formulario de usuario.

16. Salga del Editor de Visual Basic, ingrese las etiquetas que se muestran en la fila 1 a continuación y pruebe el formulario de usuario.

Resultado:

Prueba el formulario de usuario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Esta página utiliza Cookies. Más info