You are on page 1of 22

PROGRAMAR EN VISUAL Y EXCEL

Conociendo los Controles de un Userform

Como veíamos anteriormente, tenemos una serie de controles para agregar


al Userform, que los podíamos visualizar desde el Menú "Ver" => "Cuadro de
Herramientas".

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 continuación" y


ubicarlo en cualquier sitio del UserForm. También podemos agregar títulos o
descripciones al resto de comandos que agreguemos al UserForm.

Cuadro de Texto (Textbox): Y este 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 (ComBox): Para continuar, este sirve

para que un usuario elija una opción 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): Bien, ahora este sirve para que un

1
PROGRAMAR EN VISUAL Y EXCEL

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 función. Ejemplo: Podemos hacer que al cerrar el UserForm se
imprima un reporte solo si la casilla de selección esta tildada.
Botón de Opciones (OptionButton): Sirve para que un usuario
seleccione una opción determinada entre varias posibilidades. Ejemplo:
Querremos que el usuario indique, si es del sexo femenino o masculino.

Y de todas las opciones solo se puede seleccionar una de ellas.

Botón de Alternar (ToggleButton): Sirve para activar o


desactivar alguna funcionalidad. Este botón adopta el modo
"Encendido"/"Apagado". Ejemplo: Querremos que el usuario defina su
idioma, en modo encendido español 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.

Además, 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).

Botón de Comando (CommandButton): Es un simple Botón


que nos permite ejecutar acciones. Ejemplo: Un Botón 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 sección 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):

2
PROGRAMAR EN VISUAL Y EXCEL

Si tenemos una lista con muchos elementos el ScrollBar te permite


navegarlos. Ejemplo: Tenemos una lista con 150 países, con el ScrollBar
podemos subir y bajar por la lista de los mismos utilizando las flechas de
desplazamiento.

Botón de Numero (SpinButton): Permite aumentar o disminuir


valores. Ejemplo: Tenemos una lista con tipos de interés y querremos que
sean incrementadas o disminuidos en cantidades predeterminadas desde el
Botón de Numero.
Imagen (Image): Permite introducir imágenes en el UserForm.
Ejemplo: Querremos introducir una Fotografía 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 abrirá una ventana donde podremos
escribir y asociarle una Macro

Creando un UserForm paso a paso

Lo he agregado en el mismo orden que aparecen en el Cuadro de


Herramientas:

3
PROGRAMAR EN VISUAL Y EXCEL

Ejemplo paso a paso - Como crear un Formulario

Bien, antes de crear un Formulario debemos pensar bien cual será su objetivo
y cuáles son los controles que utilizaremos.

Objetivo:

Crear un Formulario para que un usuario complete unos datos personales


(Nombre, Edad y Fecha de nacimiento). Luego que el usuario complete sus
datos al apretar un botón los mismos se volcarán en una Tabla de Excel.

Los Controles que utilizaremos son:

 Textbox: Para que el usuario ingrese los Datos.

 Label: Para darle el nombre de los Textbox.

 CommandButton: Para proceder con el Ingreso de Datos o Cancelar.

1 -Creamos la Tabla en la Hoja Excel: Primeramente debemos crear un nuevo


Libro que contenga una Tabla Excel donde se volcarán los datos del Userform.
Para esto creamos un nuevo Libro llamado Datos.xlsm y creamos la siguiente
Tabla:
Ejemplo de la Imagen

2- Creamos un Userform: Los UserForm se crean desde el Editor de Visual Basic.

 Abrimos el Editor con Alt + F11, seleccionamos "Ver" > "Explorador de Proyectos"

para ver la lista de proyectos disponibles (Los mismos se verán en la parte

izquierda de la ventana).

4
PROGRAMAR EN VISUAL Y EXCEL

 En la ventana "Proyectos" seleccionamos VBAProyect (Datos.xlsm). Desde el

Menú superior elegimos "Insertar" > "Userform".


Ejemplo de la Imagen

3-Nombramos el Userform:

 Abrimos las propiedades desde el Menú "Ver" > Ventana "Propiedades".

 Hacemos doble clic en donde dice (Name) UserForm1, en la parte superior y

escribimos DatosUF, luego pulsamos "Enter" (Este es el nombre con el que nos

referiremos al Userform desde las Macros).

 El nombre del Userform cambió en la ventana "Proyecto", pero el Userform mismo

sigue mostrando "Userform1" en su Barra de su Título, para cambiarlo vamos a la

ventana "Propiedades", hacemos doble clic en "Caption", escribimos Datos

Personales (Encima de Userform1) y luego "Enter", ahora, la Barra de Título del


5
PROGRAMAR EN VISUAL Y EXCEL

Userform es más apropiada para nuestro propósito y para darle mejor

información al usuario.

Bien, una vez que borramos UserForm1 y escribimos DATOSUF, observa que
el nombre del Formulario cambio en la ventana "Proyecto".

También al cambiar el nombre en "Caption", cambio el Titulo del Formulario,


ahora en vez de UserForm1, dice: DATOS PERSONALES:

Ejemplo de la Imagen

6
PROGRAMAR EN VISUAL Y EXCEL

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. Para comenzar, hacemos clic en el Control de TextBox ab y luego
hacemos clic en el Userform, en la parte donde queramos ubicarlo.

Ejemplo de la Imagen

7
PROGRAMAR EN VISUAL Y EXCEL

 Con el nuevo TextBox seleccionado hacemos doble clic en la ventana

"Propiedades", Propiedad (Name), escribimos la palabra "UFNombre" y luego

"Enter" (Este es el nombre que le asignamos al objeto para luego referirnos a él

desde las Macros).

 Para continuar, hacemos clic en una parte vacía 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 información que se debe
introducir.

 En el cuadro de herramientas hacemos clic en el Boton Label A (Etiqueta).

 En el Userform hacemos clic a la izquierda del cuadro de texto, para agregar el

cuadro de texto.

Ejemplo de la Imagen

8
PROGRAMAR EN VISUAL Y EXCEL

 Si fuera necesario podemos cambiar el tamaño de la Etiqueta de Texto o del Cuadro

de Texto para que no se superponga. se puede hacer clic en sus bordes (Pequeños

cuadritos) y arrastrar para cambiar su tamaño.

 Seleccionamos la nueva Etiqueta, hacemos doble clic en la propiedad "Caption"

de la venta de "Propiedades", escribimos Nombre y pulsamos "Enter".

Ejemplo de la Imagen

 Hacemos clic en alguna parte vacía del Userform para seleccionarlo y mostrar el

cuadro de herramientas.
6- Agregamos los cuadros de textos 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:

9
PROGRAMAR EN VISUAL Y EXCEL

* 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:

 Pulsa clic en el primer TextBox. Manteniendo pulsada la Tecla MAYUS,

selecciona los otros TextBox.

 Vamos a Menú Formato > Alinear > Izquierda. Hacemos clic en alguna parte vacía

del Userform para seleccionarlo y mostrar el Cuadro de Herramientas.

7 -Agregamos los Botones: Para permitir que el usuario ejecute una acción, se
pueden agregar Botones de Comando o CommandButons. Nuestro Userform
tendrá un botón para agregar los datos a la Tabla Excel y otro botón para cerrar el
Userform.

 En el cuadro de herramientas hacemos clic en ComandButton (Botón de comando).

 En el Userform hacemos clic en la parte inferior izquierda para agregar el Boton.

 Con el nuevo Botón seleccionado hacemos doble clic en la Propiedad (Name) de la

ventana de "Propiedades", escribimos "UFAgregar" y luego "Enter".

10
PROGRAMAR EN VISUAL Y EXCEL

 Con el nuevo botón seleccionado hacemos doble clic en su Propiedad Caption en

la ventana de "Propiedades", escribimos "Agregar" y luego "Enter".

 Hacemos clic en alguna parte vacía del Userform para seleccionarlo y mostrar el

cuadro de herramientas.

 Repetimos los pasos anteriores para agregar otro CommandButton llamado

UFCerrar y nombre Cerrar.

 Si fuese necesario podemos reubicar los botones dentro del Userform.


Ejemplo de la Imagen

vamos a escribir los códigos correspondiente al botón Agregar del Formulario


(UserForm).

Comenzamos: Agregamos el Codigo al Boton Agregar

 Seleccionamos el Botón Agregar

Desde el Menú Superior elegimos la opción Ver > Código.

Esto abrirá una ventana donde podremos escribir "Código Macro" para dicho
objeto.

11
PROGRAMAR EN VISUAL Y EXCEL

Donde titila el cursor escribimos lo siguiente:

‘definimos las variables


Dim iFila As Long
Dim ws As Worksheet
Set ws = Worksheets(1)
‘ Encuentra la siguiente fila vacía
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
12
PROGRAMAR EN VISUAL Y EXCEL

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 código. Hay muchos Objetos,


Propiedades y Métodos nuevos

Agregamos el codigo al boton Cerrar


 Seleccionamos el Botón Cerrar: En el Menú Superior elegimos Ver >
Código.

13
PROGRAMAR EN VISUAL Y EXCEL

Donde titila el cursor escribimos el siguiente código:

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 botón Cerrar.

En la Ventana Propiedades cambiamos la Propiedad Cancel a True.

Ejemplo de la Imagen

 Probar el Userform: Ya podemos probar el funcionamiento del Userform!


1-Hacemos clic en alguna parte vacía 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 ejemplo: 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 botón de Agregar y los datos se completarán 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.
14
PROGRAMAR EN VISUAL Y EXCEL

Si al presionar TAB el orden del movimiento no es el correcto, es posible


cambiarlo:

 1- Clic derecho en una parte vacía del Userform


 2 -Elegimos Orden de Tabulación.
 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.
Asignar un Boton para Ejecutar el Userform

Podemos agregar un botón 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 Pestaña Desarrollador = > Sección Controles = >
Desde el Comando Insertar, seleccionamos con un clic el botón 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 Botón Nuevo

15
PROGRAMAR EN VISUAL Y EXCEL

Ejemplo de la Imagen

 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 botón y pulsamos clic derecho del mouse, se
despliega varias opciones y seleccionamos con un clic Modificar Texto.
Borramos el texto y escribimos Formulario Datos.

Complementos (Add - Ins)

Una vez que tenemos nuestras Macros, es posible "empaquetarlas" bajo la


forma de un Complemento.

También conocidos como Add-in, de tal forma que se pueden distribuir a otros
usuarios para que lo instalen y tengan acceso a las Macros.

En general, estos complementos no son más que nuevas funcionalidades y


opciones para Excel, realizadas con Macros.

Para acceder a los complementos puedes hacerlo desde la Pestaña Archivo


> Opciones, se abre una nueva ventana, dentro de esta pulsamos clic en
complementos => Ir, y verás un cuadro similar al que se muestra a
continuación:

Ejemplo de la Imagen

16
PROGRAMAR EN VISUAL Y EXCEL

A la izquierda se ve la lista de complementos disponibles siendo posible


activarlos o desactivarlos (Seleccionando o deseleccionando la casilla a la
izquierda de su nombre).

Cuando queremos instalar nuevos complementos debemos hacerlo con el


botón Examinar.

Dicho botón nos permitirá buscar el directorio donde se encuentra el


complemento que deseamos instalar.

La extensión de los archivos de complementos es XLAM.

La utilidad de un complemento es que podemos crear nuestras Macros y


luego guardarlas como complemento.

De esta forma, dichas Macros estarán disponibles en todas las Hojas Excel
que abramos, dado que el complemento se cargará automáticamente (Excel
carga automáticamente todos los complementos que estén seleccionados al
abrirse).

El proceso de creación de un complemento es sencillo:

 1 -Primero debes crear tus Macros normalmente, desde el Editor de


Macros.
 2 -Luego debes guardar dicho archivo Excel desde la Pestaña Archivo =>
Guardar como...

17
PROGRAMAR EN VISUAL Y EXCEL

 3 -Se abrirá el cuadro de diálogo de guardar y en la parte inferior hay una


lista desplegable llamada Guardar como Tipo. En dicha lista debes elegir
la opción Complemento de Microsoft Excel, que suele ser la última de las
opciones.

Ejemplo de la Imagen

 4 -Deberás elegir un nombre para tu complemento y guardarlo


normalmente. Dicho archivo se guardará automáticamente con la
extensión XLAM.

18
PROGRAMAR EN VISUAL Y EXCEL

 5- Para instalar el complemento debes hacerlo desde la Pestaña Archivo


=> Opciones = > Complementos y luego la opción Examinar, tal como te
señalábamos al comienzo. Deberás buscar el directorio donde guardaste
el archivo XLAM y seleccionarlo.

Seguridad de Macros
Excel posee 4 niveles de seguridad de Macros.

Los mismos se pueden definir desde la pestaña Desarrollador => Sección


Códigos => Comando Seguridad de Macros .

El cuadro de Diálogo que se abre se ve así:

Lo recomendable es tener activado la opción "Deshabilitar todas las Macros


con notificación".

De esta forma cada vez que abramos un archivo tendremos la opción de


habilitar o deshabilitar las Macros, mediante un mensaje automático de aviso
que aparece.

Si el archivo proviene de una fuente segura las podremos habilitar sin


problemas.
19
PROGRAMAR EN VISUAL Y EXCEL

Observa la imagen:

Ejemplo de la Imagen

Al pulsar clic en Habilitar Contenido, se habilitara todas las Macros que


contiene el Libro o la Plantilla.

No olvides que al tener habilitada la opción " Deshabilitar todas las Macros
con notificación" siempre recibirás el aviso a como se muestra en la imagen.

Muy bien, ahora que ya conoces sobre la Seguridad de las Macros, en el


próximo tema vamos a continuar con el tema "Firma Digital".

Como Crear Tu Firma Digital


Como Crear Tu Firma Digital, Sabes por que ? Aveces resultado fastidioso
que al abrir un Libro que contiene tus propias Macros te pida habilitar o
deshabitar tus Macros.

Para evitar esto vamos ha crear tu propia Firma Digital y evitar que aparezcan
estos mensajes.

Comencemos:

Cuando se abre un Libro Excel que contiene Macros, aparece un


mensaje de aviso indicando si se desean habilitar o deshabilitar las
mismas.

20
PROGRAMAR EN VISUAL Y EXCEL

Si quieres Ejecutar las Macros y que no vuelva a aparecer dicho mensaje,


deberás crear una Firma Digital.

Para crear una Firma Digital, hay que ejecutar un archivo llamado SELCERT
(En mi caso particular se encuentra ubicado en C:\Archivos de
programa\Microsoft Office\Office15\).

Si no lo tienes allí, puedes buscarlo en tu PC con la opción de buscar archivos.

Al ejecutar SELCERT se abre una pequeña ventana donde se pide el ingreso


del texto de la Firma Digital y luego aceptar.

Ejemplo de la Imagen

21
PROGRAMAR EN VISUAL Y EXCEL

Ahora lo que debemos hacer es asociar dicha firma a nuestro archivo xlsm
con macros.

Para esto abrimos nuestro xlsm con Macros, pasamos al Editor de Macros y
elegimos las opciones del Menú Herramientas => Firma Digital.

Luego hacemos click en el botón Elegir, escogemos la firma creada,


aceptamos y todo listo, Macros Firmadas.

Cuando abramos el xlsm con Macros nuevamente, Excel indicará que posee
macros firmadas por XXXX (Nombre de la persona que creo la firma).

Si marcamos la casilla de confiar de esta fuente, ya nunca más aparecerá el


mensaje de Macros al abrir dicho archivo.

Todos los xls que lleven esa firma se abrirán con sus Macros habilitadas

22

You might also like