Controles de Formulario / Controles ActiveX

En Excel tenemos algunos controles que podemos añadir a nuestra hoja de cálculo.

Estos controles se dividen en dos categorías.
Por un lado tienes los controles de formulario y por otro los controles ActiveX.

Utilizaremos los controles de formulario cuando queremos asignar una macro a un control.
Utilizaremos los controles ActiveX cuando queremos agregar código de Visual Basic a un control.
En las versiones 2007 y 2010 nos encontramos con estos controles en la cinta por debajo del botón “Insertar” en la pestaña “Programador”.

les07_image001_es

En las versiones anteriores, los encontramos nuevamente en su propia barra de herramientas.

Haz clic en el botón “Ver” en la barra de menú, y selecciona “Barras de herramientas” en el menú desplegable, luego haz clic en la barra de herramientas que deseas ver.

les07_image002_es

No te voy a mostrar todos estos controles, únicamente te mostraré algunos. Sobre todo, te mostraré la diferencia entre el control de formulario y el control ActiveX.

Empezaré con el más utilizado, el “botón”.

Botón

El primer ejemplo es el control de formulario “Botón”.
Tal y como dijimos antes, podemos vincular una macro a un control de formulario, nosotros ya tenemos nuestra macro. También puedes hacerlo después de dibujar el botón, pero ¿por qué demorar?.

Como ejemplo he creado una macro para imprimir el documento.les07_image003_es

Ahora podemos aplicar esta macro a un botón.
Primero seleccionamos el control de formulario “botón”, y dibujamos un botón en la hoja de cálculo. Luego haz clic sobre él y arrástrarlo a la hoja de cálculo.

les07_image004_esCuando sueltes el botón del ratón, la ventana “Asignar macro” se abrirá.

Selecciona la macro y haz clic en el botón Aceptar.

Esto coloca el botón en la hoja de cálculo:les07_image005_es

 

 

Para cambiar el texto del botón, selecciona el texto y escribe lo que quieras.

Para continuar trabajando en el botón, haz clic derecho y elige la opción “Formato de control”.

Esto abre el cuadro de diálogo “Formato de control”, donde contamos con 7 pestañas.
La mayoría de las opciones me parecen muy claras e intuitivas, en esta parte la única cosa que te puedo mostrar es como hacer que el botón no sirva para imprimir, ve a la pestaña “Propiedades” y desactiva el texto “Imprimir objeto”.

les07_image006_es
El segundo ejemplo es el control para el “botón” ActiveX.
Primero seleccionamos el control “botón” ActiveX, y hacemos clic en la hoja de cálculo arrastrando el botón del ratón al lugar donde deseamos.
Suelta el botón del ratón, esto no abrirá la “ventana de macros”, y aparecerá el botón con el texto “CommandBut”.

les07_image007_es

Si tienes un control ActiveX seleccionado, automáticamente podrás dibujarlo en “Modo Diseño”.

También es necesario hacer cambios a este control.
Cuando el “Modo Diseño” este seleccionado, no podrás realizar ningún cambio en el botón de comando.
Haz clic derecho sobre el botón, y selecciona “Ver código”.
Se abrirá la ventana “Visual Basic para Aplicaciones”.
La ventana de VBA se divide en tres partes por defecto.
En la parte media, que ocupa la mayor parte del espacio, es donde ingresamos el código VBA.
A la izquierda tenemos el “Proyecto” y la ventana de “Propiedades”.
La ventana “Proyecto” nos muestra cada hoja de cálculo (C), y cada libro (B), que se abre en Excel.
Haz doble clic en otro objeto, éste abrirá otra ventana “código” con todo el código – código que se agrega a ese objeto.
El objeto extra “ThisWorkbook” (D), es lo que utilizas cuando un controlador de eventos se agrega a tu libro. Un ejemplo es guardar automáticamente el libro cuando lo cierres. Todos estos conceptos están hechos para un curso de VBA.
Todas estas ventanas se pueden cerrar haciendo clic en el icono de la cruz (A) en la esquina superior izquierda de la ventana. Puedes volver a la ventana haciendo clic en el botón “Ver” en la barra de menú y seleccionando “Código” para la ventana de código, “Explorador de proyectos” para la ventana “Proyectos” y “Ventana Propiedades” para, seguro que lo adivinaste, la ventana “Propiedades”.
En la ventana código VBA, mira la parte del código que dice “Private Sub CommandButton1_Click ()”
Lo que esto significa es que una subrutina en un comando es otorgada a “CommandButton1” cuando haces clic en él.
La parte de “Private” significa que este comando sólo pertenece a este botón en particular.

les07_image008_es

En este subprograma, tienes que introducir un comando, de lo contrario no servirá de mucho.
Como ejemplo voy a añadir el mismo comando que he añadido en el botón “macro”.
Es decir, la impresión de la hoja de cálculo.
El código VBA para esto es “Printout”.
Coloco dicho código entre el comienzo y el final de la subrutina (1).
Recuerda que todo el código VBA debe ser colocado en subrutinas.
En lo que respecta a la preparación de un botón de VBA.
Es mucho más amplio que lo que podemos hacer con un botón de macro.
Todos estos ajustes se pueden cambiar en la ventana “Propiedades”.
Por ejemplo, cambia el nombre del botón, el color de fondo, el texto (título) del botón y la fuente (Fuente).
Si terminaste con todos los ajustes del botón, cierra la ventana de VBA.

les07_image009_es

Cuando te coloques en la vista previa, puedes ver claramente la diferencia entre los dos botones.

Si quieres probar el botón de VBA, haz clic en el “Modo Diseño” de nuevo, para que ya no este más seleccionado.

Más información acerca de Visual Basic en las siguientes lecciones.

les07_image010_es

Increíble! Has completado Lección 7 INICIAR EL PROXIMO LECCIÓN