Está en la página 1de 16

Programar en Excel Controles de un Userform

Como veamos anteriormente, tenemos una serie de controles para agregar al Userform, que
los podamos visualizar desde el men Ver => Cuadro de Herramientas.

Ahora explicaremos brevemente la utilidad de cada control. Los controles se explican en el


mismo orden que aparecen en el Cuadro de Herramientas y en la figura anterior (de
izquierda a derecha y de arriba hacia abajo).

Seleccionar objetos:
Sirve para seleccionar controles que hayamos insertado en el UserForm.

Etiqueta (Label):
Sirve para poner un titulo o un texto.
Ejemplo: Podemos poner un texto del tipo Complete las opciones a continuacin y
ubicarlo en cualquier sitio del UserForm. Tambin podemos agregar Ttulos o
descripciones al resto de comandos que agreguemos al UserForm.

Cuadro de Texto (Textbox):


Sirve para que un usuario introduzca Datos.
Ejemplo: Querremos que el usuario introduzca una Fecha o un Nombre ( Que luego
llevaremos a alguna Celda de Excel).

Cuadro Combinado (ComboBox):


Sirve para que un usuario elija una opcin de una Lista. Ejemplo: Creamos una Lista con
los meses de Enero a Diciembre para que el usuario elija uno de ellos.

Cuadro de Lista ( ListBox):


Sirve para que un usuario rellene o elija varias opciones de una lista. Ejemplo: creamos una
lista con Regiones o Ciudades y el usuario deber elegir una o varias de ellas.

Casilla ( CheckBox):
Sirve para que un usuario active una determinada funcin. Ejemplo: podemos hacer que al
cerrar el UserForm se imprima un reporte solo si la casilla de seleccin esta tildada .

Botn de Opciones ( OptionButton):


Sirve para que un usuario seleccione una opcion determinada entre varias posibilidades.
Ejemplo: querremos que el usuario indique, si es del sexo femenino o masculino. De todas
las opciones solo se puede seleccionar una de ellas.

Botn de Alternar ( toggleButton):


Sirve para activar o desactivar alguna funcionalidad. Este botn adopta el modo
Encendido/Apagado. Ejemplo: querremos que el usuario defina su idioma, en modo
encendido espaol y en modo apagado ingles.

Marco ( Frame):

Sirve para agrupar elementos de un UserForm ( los elementos se deben ubicar dentro del
Frame ( Marco). Ejemplo: Tenemos Varios Grupos de OptionButton y para distinguirlo lo
agrupamos con un frame. Si tenemos un grupo de opciones tipo Masculino/Femenino, los
agrupamos dentro de un frame (marco). Si luego tenemos otro grupo de opciones del tipo
Mayor de Edad/Menor de Edad los agrupamos dentro de otro frame (marco).

Botn de Comando (CommandButton):


Es un simple botn que nos permite ejecutar acciones. Ejemplo: Un boton de Ayuda que
ejecuta otro UserForm con ayuda para el usuario.

Barra de Tabulaciones ( TabSTrip):


En un Mismo UserForm se puede crear distintas secciones. Ejemplo: Un UserForm con
cuatro Secciones: Norte, Sur, este y oeste. Dentro de cada seccin podemos ubicar
distintos controles.

Pagina Multiple (Multipage):


En un mismo formulario se puede crear distintas paginas. Ejemplo: Un UserForm con 2
paginas: Nicaragua y el resto del Mundo. Dentro de cada pagina podemos ubicar distintos
controles o distintas secciones.

Barra de Desplazamiento ( ScrollBar):


Si tenemos una lista con muchos elementos el ScrollBar te permite navegarlos. Ejemplo:
Tenemos una lista con 150 paises. Con el ScrollBar podemos subir y bajar por la lista de
los mismos utilizando las flechas de desplazamiento.

Boton de Numero ( SpinButton):

Permite Aumentar o Disminuir Valores. Ejemplo: Tenemos una lista con tipos de inters y
querremos que sean incrementadas o disminuidos en cantidades predetermindas desde el
Botn de Numero.

Imagen (Image):
Permite introducir imgenes en el UserForm. Ejemplo: Querremos introducir una fotografa
como fondo del userform para darle un aspecto mas profesional.

RefEdit:
Permite hacer referencia a una Celda de Excel. Ejemplo: querremos que el usuario
seleccione un dato que previamente fue introducido en una celda de Excel.
Haciendo doble clic en cada control se abrira una ventana donde podremos escribir y
asociarle una macro. En el tema siguiente vamos a ver como crear un Formulario
(UserForm) paso a paso.

Programar en Excel - Creando un UserForm paso a


paso (Continuacin).
Muy bien, hoy continuamos con la creacin del Formulario (UserForm), pero antes, me
pregunto si ya viste el tema anterior? Si todava no lo has visto has clic aqu y lee el tema
anterior. Una vez que termines de leer y aplicar los pasos, regresa nuevamente aqu y
continua.
Continuamos entonces:
4. Agregamos un Cuadro de Texto
Para permitir que el usuario ingrese datos en el Userform agregamos un control TextBox (
Cuadro de Texto), desde el Cuadro de Herramientas.
4.1 Hacemos clic en el control de TextBox
queramos ubicarlo.

y luego hacemos clic en el Userform, en la parte donde

4.2 Con el nuevo TextBox seleccionado hacemos doble clic en la Ventana de Propiedades,
propiedad (Name), tipeamos la palabra UFNombre y luego enter (este es el nombre que le
asignamos al objeto para luego referirnos a l desde las macros).

4.3 Hacemos clic en una parte vaca del Userform, para volver a seleccionar todo el Userform.

5. Agregamos un Texto
Para ayudar al usuario a ingresar sus datos, debemos indicarle que es lo que debe introducir
en el Cuadro de Texto del Paso anterior. Podemos agregar una etiqueta de texto que
describa la informacin que se debe introducir.

5.1 En el Cuadro de Herramientas hacemos clic en el botn Label

(Etiqueta).

5.2 En el UserForm hacemos clic a la Izquierda del Cuadro de texto, para agregar el cuadro de texto.

5.3 Si fuera necesario podemos cambiar el tamao de la etiqueta de texto o del cuadro de texto para que
no se superponga. se puede hacer clic en sus bordes (Pequeos cuadritos) y arrastrar para cambiar su
tamao.
5.4 Seleccionamos la nueva etiqueta , hacemos doble clic en la propiedad Caption de la ventana de
propiedades, tipeamos Nombre y pulsamos enter.

5.5 Hacemos clic en alguna parte vaca del Userform para seleccionarlo y mostrar el cuadro de
herramientas.

6. Agregamos los Cuadros de Texto restantes


Agregamos los cuadros de texto y las etiquetas restantes (ya lo hicimos para el nombre as
que
repetimos
para
Edad y Fecha de Nacimiento).
Repetimos los pasos 4 y 5 y agregamos:
* 1 TextBox cuyo (Name) sea UFEdad, con una etiqueta de texto (Label) Edad
* 1 TextBox cuyo (Name) sea UFFecha, con una etiqueta de texto (Label) Fecha Nac.
Es muy importante que no olvides asignar bien los nombres (Name) a los Textbox, si no la
macro
dar
error.
Puedes revisar los pasos 4 y 5 para recordar como hacerlo.
Si los textbox no quedan alineados se pueden alinear de la siguiente forma:
1. Clic en el primer TextBox
2. Manteniendo pulsada la tecla MAYUS, selecciona los otros TextBox
3. Vamos al men Formato > Alinear > Izquierda
4. Hacemos clic en alguna parte vaca del Userform para seleccionarlo y mostrar el cuadro
de herramientas.

7. Agregamos los Botones

Para permitir que el usuario ejecute una accin, se pueden agregar botones de comando o
CommandButons. Nuestro Userform tendr un botn para Agregar los datos a la tabla
Excel y otro botn para Cerrar el Userform.
7.1 En el Cuadro de Herramientas hacemos clic en CommandButton ( Boton de Comando).
7.2 En el Userform hacemos clic en la parte inferior izquierda para agregar el botn.

7.3 Con el nuevo botn seleccionado hacemos doble clic en la propiedad (Name) de la
Ventana de Propiedades, tipeamos UFAgregar y luego enter.
7.4 Con el nuevo botn seleccionado hacemos doble clic en su propiedad Caption en la
Ventana de Propiedades, tipeamos Agregar y luego enter.
7.5 Hacemos clic en alguna parte vaca del Userform para seleccionarlo y mostrar el
Cuadro de Herramientas.
7.6 Repetimos los pasos anteriores para agregar otro CommandButton llamado UFCerrar y
nombre Cerrar.
7.8 Si fuese necesario podemos reubicar los botones dentro del Userform.
Es muy importante que no olvides asignar bien los nombres (Name) a los
CommandButtons, si no la macro dar error. Esto se explica en el paso 7.3 y luego debers
repetirlo para el otro botn, tal cual se indica en el paso 7.6.

Muy bien, ya hemos creado el Formulario ahora vamos a agregar el codigo para los botones
Agregar y Cerar, pero esto lo haremos en el post de maana.

Programar en Excel - Cdigos para programar el


Boton "Agregar".
Vamos a comenzar con el tema de hoy, pero antes te invito a que repases el tema anterior
pulsando clic aqu. Si ya lo leiste y aplicaste todos los pasos del tema anterior, entonces
continua con este tema.
Hoy vamos a escribir los cdigos correspondiente al botn Agregar del Formulario
(UserForm). Comenzamos:

Agregamos el cdigo al botn Agregar


Seleccionamos el botn Agregar
Desde el men superior elegimos la opcin Ver > Cdigo. Esto abrir una ventana donde
podremos escribir cdigo macro para dicho objeto.

Donde titila el cursor escribimos lo siguiente:

Private Sub UFAgregar_Click()


definimos las variables
Dim iFila As Long
Dim ws As Worksheet
Set ws = Worksheets(1)
Encuentra la siguiente fila vaca
iFila = ws.Cells(Rows.Count, 1) .End(xlUp).Offset(1, 0).Row
Verifica que se ingrese un nombre
If Trim(Me.UFNombre.Value) = Then
Me.UFNombre.SetFocus
MsgBox Debe ingresar un nombre
Exit Sub
End If
Copia los datos a la tabla Excel
ws.Cells(iFila, 1).Value = Me.UFNombre.Value
ws.Cells(iFila, 2).Value = Me.UFEdad.Value
ws.Cells(iFila, 3).Value = Me.UFFecha.Value
Limpia el formulario
Me.UFNombre.Value =
Me.UFEdad.Value =
Me.UFFecha.Value =
Me.UFNombre.SetFocus
End Sub
En el men superior elegimos Ver > Objeto para regresar al Userform.

No te preocupes si no comprendes el cdigo. Hay muchos objetos, propiedades y mtodos


nuevos. Todos ellos se explican mejor en los siguientes temas.
En el prximo tema, vamos a agregar el cdigo correspondiente para el botn Cerrar, tal a
como lo hicimos hoy con el cdigo Agregar.
No olvides dejarme tu comentario, me gustaria saber si te funciono los cdigos, si no lo
lograste, solo djame un comentario o contactame por el chat, para que tratamos de hacer
funcionar juntos los cdigos del botn agreg

Programar en Excel - Cdigos para Programar el


Botn Cerrar
En el tema anterior escribimos los cdigos para el botn Agregar, lograste completar este
paso? Si todava no has visto el tema anterior o no has completado los pasos, por favor haz
clic aqu y aplica los pasos del tema anterior. Una vez termines, regresa nuevamente aqu y
continua con el tema de hoy.
Para hoy vamos a escribir los cdigos del botn Cerrar, para eso comenzamos de la
siguiente forma:

Agregamos el cdigo al botn Cerrar


Seleccionamos el botn Cerrar
En el men superior elegimos Ver > Cdigo

Donde titila el cursor escribimos el siguiente cdigo:


Private Sub UFCerrar_Click()
Unload Me
End Sub
En el men superior elegimos Ver > Objeto para regresar al Userform.
Permitir al usuario cerrar el Userform con la tecla ESC
Seleccionamos el botn Cerrar
En la Ventana Propiedades cambiamos la propiedad Cancel a True.

Probar el Userform
Ya podemos probar el funcionamiento del Userform !
1. Hacemos clic en alguna parte vaca del Userform para seleccionarlo y mostrar el cuadro
de herramientas.
2. En el men superior elegimos Ejecutar => Ejecutar Sub/Userform
3. Ahora podemos comenzar a completar el primer cuadro del Userform y escribimos un
nombre, por ej. Juan.
4. Presionamos la tecla TAB para movernos al siguiente cuadro de texto.
5. Cuando hemos completado todos los cuadros de texto, hacemos clic en el botn de
Agregar
y
los
datos
se
completarn en la Tabla de Excel.
6. Podemos repetir los pasos anteriores e ir agregando distintos nombres con sus
respectivos datos.
7. Hacemos clic en Cerrar para volver al editor de macros.
La tecla TAB sirve para moverse entre los distintos controles de un Userform. Si al
presionar TAB el orden del movimiento no es el correcto, es posible cambiarlo:
1. Clic derecho en una parte vaca del Userform
2. Elegimos Orden de Tabulacin.
3. Seleccionamos el control de la lista y con los botones de Mover Arriba o Mover Abajo
ajustamos el orden.

4. Hacemos clic en OK
Muy bien, con esto terminamos con el tema de hoy, para maana vamos a a ver como
llamar este Formulario desde excel. Atento al tema de maana.

Programar en Excel Llamar un


Formulario desde excel
Programar en Excel - Como llamar un Formulario
Desde Excel.
En el tema anterior concluimos con el diseo de un Formulario en VBA (Visual Basic para
Aplicaciones) y hoy vamos a llamar a este formulario desde excel, pero antes, tengo una
pregunta para ti: Ya viste el tema anterior? Si todava no lo has visto haz clic aqu. Una vez
termines de leer y aplicar los pasos, regresa nuevamente aqu y continua con el tema de
hoy.
A continuacin vamos a ver los pasos para llamar a un Formulario creado en VBA desde
excel, Sigue los siguiente pasos:

Programar en Excel Asignar un botn para ejecutar el Userform


Podemos agregar un botn para que un usuario pueda ejecutar el Userform desde la hoja
Excel.
1. Activamos Excel, libro Datos.xls, Hoja 1
2. Nos ubicamos en la Pestaa Desarrollador = > Seccin Controles = > Desde el Comando
Insertar, seleccionamos con un clic botn de control de Formulario y lo dibujamos dentro
de la Hoja.

3. Una vez Dibujado el control, al soltar el mouse se presenta una nueva ventana.
4. Hacemos clic en el botn Nuevo

5. Donde titila el cursor escribimos: DatosUF.Show

6. Cada vez que hagamos clic en la figura se ejecutar el Userform.


7. Vamos a cambiar el Nombre del Boton, para modificarlo vamos a ubicarnos encima del
botn y pulsamos clic derecho del mouse, se despliega varias opciones y seleccionamos con
un clic Modificar Texto. Borramos el texto y escribimos Formulario Datos.
Ahora vamos a probar que tal funciona el botn, para eso he grabado un video bien cortico
de 26 segundo que te mostrara como quedo el boton y su funcionalidad:
Muy bien, con esto hemos terminado con el tema de formularios, para el tema siguiente
vamos a ver como ejecutar una macro desde otra macro.

También podría gustarte