Formulario de usuario de Excel VBA
En Excel VBA tenemos una herramienta muy útil que se conoce como UserForm. Es una forma práctica de obtener información de un usuario. ¿Qué es un formulario de usuario en VBA? UserForm es como un cuadro de asistente o un cuadro de diálogo en el que pedimos a los usuarios que ingresen datos y tiene algunas instrucciones.
VBA UserForm también está incorporado en Excel y puede ser creado por los desarrolladores. Para usar el formulario de usuario de VBA primero, debemos activar la pestaña de desarrollador desde la pestaña Opciones. Una vez que se activa la pestaña del desarrollador, podemos continuar en Excel VBA y crear UserForms. Las formas de usuario se utilizan para almacenar datos en Excel. Se puede comparar con los formularios de Google, donde tenemos un conjunto específico de instrucciones y le pedimos al usuario que ingrese datos según las instrucciones.
UserForm es ampliamente utilizado en todas partes. En UserForm, los datos ingresados por el usuario se almacenan en la columna correspondiente. Es la forma más práctica en Excel de recibir información del usuario y almacenar los datos en Excel relativamente en la ubicación correcta.
¿Cómo crear UserForm en Excel VBA?
A continuación se muestran los diferentes ejemplos para crear UserForm en Excel utilizando el código VBA.
Puede descargar esta plantilla de Excel de UserForm de VBA aquí - Plantilla de Excel de UserForm de VBAFormulario de usuario de Excel VBA - Ejemplo # 1
Primero, veamos lo básico del UserForm. Cómo ver un UserForm y qué es un UserForm.
- En la hoja de cálculo de Excel, vaya a la pestaña Desarrollador y haga clic en el editor de Visual Basic.
- Ahora, ¿cómo agregamos un formulario de usuario a esta pantalla en blanco? En la herramienta de inserción, haga clic en UserForms.
- Se abre un nuevo cuadro de asistente y está en blanco, que es nuestro formulario de usuario en blanco.
- Actualmente se llama userform1 ya que no le hemos dado ningún nombre. Podemos hacerlo cambiando su nombre de la opción de propiedades en el lado izquierdo de la pantalla.
- Cambiemos el nombre al formulario de muestra y veamos el resultado.
Nuestra forma de usuario se nombra como muestra ahora.
- Ahora intentemos cambiar el color de la forma de usuario. En la caja de herramientas de propiedades, tenemos un menú desplegable que se nos nombra como color de fondo, podemos seleccionar cualquier conjunto de colores que queramos.
- Después de seleccionar la opción para el color negro, el color de mi muestra de UserForm ha cambiado de la siguiente manera,
- ¿Cómo ejecutamos este formulario de usuario? Asegúrese de haber hecho clic en el formulario de usuario y haga clic en el botón Ejecutar que se muestra en la captura de pantalla a continuación. Cuando hacemos clic en el botón Ejecutar, podemos ver que aparece un formulario en blanco en la pantalla de Excel.
No tiene más opciones que cerrarlo porque no le hemos agregado ningún otro botón.
Formulario de usuario de Excel VBA - Ejemplo # 2
Veamos cómo agregar botones a un formulario de usuario para ingresar los datos en Excel VBA. Haremos un formulario de usuario de VBA simple en el que le pediremos al usuario que ingrese su nombre, edad y sexo. Los pasos necesarios para crear dicha forma de usuario son los siguientes.
- En la hoja de cálculo de Excel, vaya a la pestaña del desarrollador y haga clic en el editor visual básico.
- Ahora, en la pestaña Insertar, haga clic en formulario de usuario para abrir una ventana de formulario de usuario.
- Necesitamos agregar botones a esta forma de usuario para obtener información del usuario. Podemos ver que también se abre una caja de herramientas junto a nuestro formulario de usuario que tiene los botones de control.
Esta caja de herramientas tiene varios controles que se utilizan en UserForms.
- Entonces, para nuestro ejemplo, necesitamos que el usuario ingrese un nombre, edad y género. Básicamente necesitamos tres etiquetas que representen nuestras instrucciones. Haga clic en etiquetas .
- Pase el mouse sobre el formulario de usuario y haga clic y arrastre para insertar una etiqueta en el formulario de usuario.
- Actualmente, se nombra como etiqueta 1, necesitamos cambiar el nombre de la etiqueta a " Nombre " para las instrucciones para el usuario. Haga clic en la etiqueta y elimine el nombre predeterminado proporcionado e inserte el nuevo nombre.
- Ahora inserte la etiqueta para Edad y Género de manera similar y cámbieles el nombre.
- Ahora adyacente a las etiquetas, necesitamos insertar un cuadro de texto para que el usuario pueda ingresar valores. Desde los controles de la caja de herramientas, haga clic en TextBox
- Pase el mouse junto a las etiquetas y haga clic en el formulario.
- Ahora insertemos el botón de comando en el formulario de usuario que almacenará los datos para nosotros. Desde los controles de la caja de herramientas, haga clic en CommandButton .
- Pase el mouse sobre el formulario.
- Cambie el título de CommandButton1 a "Enviar" .
- Inserte un CommandButton y llámelo como " Cancelar ".
- El siguiente paso es cambiar el nombre de cada uno de los cuadros de texto para que podamos usarlos fácilmente en nuestros códigos.
- Ejecute el UserForm haciendo clic en el botón de reproducción o presionando la tecla F5.
- En la hoja de Excel, escriba el encabezado de los datos que se deben ingresar de la siguiente manera.
- Haga doble clic en el botón de envío que abrirá la ventana de código para el botón de envío de la siguiente manera.
Código:
Private Sub CommandButton1_Click () End Sub
- En la ventana de código, declare una variable siempre que se muestra a continuación.
Código:
Private Sub CommandButton1_Click () Dim A As Long End Sub
- Ahora vamos a mover la primera celda vacante en la primera columna con el siguiente código.
Código:
Private Sub CommandButton1_Click () Dim A As Long A = Cells (Rows.Count, 1) .End (xlUp) .Row + 1 End Sub
- Permítanos almacenar el valor proporcionado por el usuario en la hoja de trabajo con el siguiente código.
Código:
Private Sub CommandButton1_Click () Dim A As Long A = Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Cells (A, 1) .Value = Nameva.Value Cells (A, 2) .Value = Ageva .Valor Cells (A, 3) .Value = Genderva.Value Nameva.Value = "" Ageva.Value = "" Genderva.Value = "" End Sub
- Ahora haga doble clic en el botón Cancelar, esto también le mostrará el nombre de macro automático como este.
Código:
Private Sub CommandButton2_Click () End Sub
- Usa el siguiente código.
Código:
Private Sub CommandButton2_Click () UserForm1.Hide End Sub
- Ejecute el formulario de usuario desde el botón de ejecución proporcionado o presionando la tecla F5 y obtendremos el siguiente resultado.
- Ingrese los valores en los cuadros de texto de la siguiente manera.
- Presione el botón Enviar para ver el resultado en la hoja de Excel de la siguiente manera.
Así es como creamos un formulario de usuario para obtener los datos del usuario.
Cosas para recordar
- Las formas de usuario están incorporadas o el desarrollador puede crearlas en VBA.
- Las propiedades de userform se pueden cambiar desde el cuadro del asistente de propiedades en VBA.
- Las formas de usuario deben tener botones para obtener datos del usuario.
- Para ejecutar un formulario de usuario, asegúrese de que esté seleccionado.
Artículos recomendados
Esta es una guía de VBA UserForm. Aquí discutimos cómo Crear UserForm en Excel usando el código VBA junto con algunos ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:
- VBA TextBox
- Crear una plantilla de Excel
- Cuadro de lista de VBA
- Crear una hoja de cálculo en Excel
- Código VBA en Excel
- Excel VBA Cerrar UserForm