MACROS
CONSIDERACIONES GENERALES
CREACIÓN DE MACROS
1. Menú Herramientas/Macros
Esta es quizás una de las formas más fáciles e intuitivas de ejecutar una
macro, pero no por ello menos efectiva. Es tan simple como acceder al
menúHerramientas/Macro seleccionando la primera opción (Macros...),
entonces aparecerá el siguiente cuadro de diálogo:
En él aparecerán una lista con
todas las macros que tengamos
grabadas ya sea en todos los libros
abiertos, en el libro actual o en un
libro específico que este abierto. En
otras palabras, esto nos permitirá
ejecutar en el libro actual de trabajo,
una macro que este guardada en
otro libro sin mayores problemas.
En el siguiente apartado
profundizaremos un poco más al
respecto, cuando tratemos el tema
de las referencias absolutas y
relativas.
Para ejecutar la macro deseada sólo bastará con seleccionar aquella que
estimemos conveniente de acuerdo a nuestras necesidades y luego hacer
clic en el botón Ejecutar.
El botón Opciones nos permite modificar el método abreviado que tiene
asignada esta macro (en este caso en particular "CTRL + h") o asignarle uno
en el caso de que no lo tuviera. Los botones Paso a paso y Modificar los
analizaremos en el siguiente apartado.
Probemos ahora en la práctica el
funcionamiento de nuestra macro,
modifiquemos manualmente el
contenido de la tabla, paraque así
veamos como funciona nuestra
macro. Lo primero que haremos será
eliminar la primera y la última fila,
luego cambiaremos el color de las
letras a verde. Esto lo haremos con
el único objetivo de simular un nuevo contenido de información al cual
queremos aplicarle el formato que deseamos. El resultado final debería ser
el siguiente:
Una vez realizado esto su macro estará lista para ejecutarse con solo un
clic. Además si desliza el mouse sobre la autoforma, podrá notar que
cambia la forma del puntero de su mouse, tal como si se tratase de un
hipervínculo en internet.
4. Asignar a un Control ActiveX
En general todo lo expresado para autoformas es válido para
los Controles ActiveX, sólo diremos que su utilización es como dar un paso
adelante. Más adelante dedicaremos varios apartados para este tipo de
controles, por lo que de momento sólo ilustraremos la forma que puede
adoptar uno de ellos:
Principio del formulario
Final del formulario
Como podrá apreciar, este tipo de botón posee un comportamiento
bastante llamativo cuando se hace clic sobre él.
ACTIVEX
CONSIDERACIONES GENERALES
Una vez que hemos analizado en que consisten las macros, ahora veremos
una serie de controles que le pueden brindar interactividad a nuestros
archivos o planillas de excel, pudiéndole incluso darle la imagen de un
poderoso "software a medida" para el tratamiento de datos y la confección
de informes. Es por esto que creemos que el dominio del uso de estos
"controles" le darán mucho más profesionalismo a nuestros trabajos, así
como también una mejor imagen.
Éstos controles también son llamados comúnmente como "botones",
aunque técnicamente se denominan Controles ActiveX. Los Controles
ActiveX son objetos gráficos que se colocan en un formulario (userforms) o
en una determinada posición de la hoja de trabajo, con el objetivo de
mostrar, seleccionar o introducir (capturar) datos, para la realización de una
acción determinada (ej. ejecución de una macro) o para facilitar la lectura
de un formulario.
Estos objetos pueden consistir por ejemplo en cuadros de texto, cuadros
de lista (combobox), botones de opciones, casillas de verificación, botones
de comandos, barras de desplazamiento u otros elementos.
Estos controles tienen propiedades propias y comunes, en esta sección
veremos aquellas más importantes, así como también algunos ejemplos
prácticos sobre el uso de estos controles. Al igual que en el caso de las
macros, los controles también pueden ser programados a través de VBA,
pero no profundizaremos demasiado en este punto.
TIPOS O CLASES DE CONTROLES
Cuadro de Texto
Principio del formulario
Botón de Comando
Principio del formulario
Este tipo de control es uno de los más conocidos. Entre otras cosas, este
control nos permite por ejemplo la ejecución de una macro, o marcar el inicio de la
realización de una determinada actividad previamente asignada o programada.
Final del formulario
Casilla de Verificación
Principio del formulario
Fútbol
Voleibol
Tenis
Natación
Final del formulario
Botón de Opción
Una botón de opción en general presenta las misma características que un grupo
de casillas de verificación, sólo que en este caso no es posible seleccionar más de
una opción. En nuestro ejemplo, el usuario sólo podrá elegir uno de los distintos
deportes propuestos.
Principio del formulario
Fútbol
Voleibol
Tenis
Natación
Final del formulario
Cuadro Combinado
Principio del formulario
Cuadro de Lista
Un cuadro de lista contiene una lista de los elementos
que pueden ser seleccionados. En términos generales es
prácticamente lo mismo que un cuadro combinado, sólo
que no posee el menú desplegable, sino que es necesario
desplazarse a través de él con el cursor.
Botón de Alternar
Cuadro de Propiedades
Una vez que hemos insertado cualquier
control, debemos hacer clic con el botón
derecho del mouse sobre dicho control,
esto para que nos aparezca el cuadro de
diálogo de propiedades de dicho control.
Este cuadro de diálogo a su vez tiene en
el extremo superior un cuadro combinando
o combobox, el cual nos permitirá
configurar las propiedades de algún otro
control que tengamos en el libro actual sin
necesidad de estar seleccionando éste
previamente.
Además, nos entrega dos opciones para
la visualización de las propiedades. La
primera de ellas en forma alfabética y la
segunda por categorías. Esta última nos
será más útil la primera vez que estemos
configurando un control, puesto que nos
será más fácil encontrar las distintas
propiedades a modificar. En cambio si ya
hemos configurado nuestro control, y deseamos cambiar un único
parámetro, quizá nos resulte más cómodo trabajar con el modo alfabético.
Otro aspecto a tener en cuenta es el denominado Modo Diseño, esto
es, la instancia durante la cual pueden ser modificados cuantas veces
sea necesario los distintos controles de nuestro libro. El modo diseño se
encuentra activado cuando el icono adjunto se encuentra resaltado, para
activarlo sólo hace falta hacer clic sobre él. Para salir del modo diseño,
bastará con volver ha hacer clic en este mismo icono. Cabe aclarar que
cuando estamos en el modo diseño los distintos controles no estarán
operativos, por lo que será necesario salir de este modo para poder utilizar
estos controles.
Principales Propiedades
A continuación explicaremos las principales propiedades con que usted
se podrá encontrar a la hora de configurar un control. En general se
entregarán los conceptos más importantes de cada una de ellas. Si usted
desea profundizar en el tema, puede hacerlo directamente a través de la
Ayuda de Excel sin mayores inconvenientes, eso si, le recomendamos
acceder a la ayuda que trae el Editor de Visual Basic, por ser esta más
específica.
LinkedCell
Esta es quizás la propiedad que más utilizará, esta propiedad se refiere a
la celda que estará vinculada con el control en cuestión. En algunos casos
servirá para que el control muestre el contenido de dicha celda, aunque en
la mayoría de los casos será el control el que condicione el contenido de
dicha celda. Esta celda por ejemplo puede ser utilizada con controles como
los cuadros de lista (simples o combinados), loscuadros de texto, los
botones de control de número o los botones de alternar, por nombrar sólo
algunos.
Para configurar el control, sólo será necesario introducir el valor o mejor
dicho la posición de la celda que se desea vincular. Recomendamos hacerlo
en términos absolutos, por ej. "B19". Esto es, la celda producida por la
concurrencia de la columna "B" y la Fila "19".
ListFillRange
Esta propiedad se utilizará en el caso de que estuviéramos configurando
un cuadro de lista simple o uno combinado. Esta propiedad le indicará al
control la lista de opciones que mostrará dicho control, para lo cual puede
hacer referencia a un rango de celdas (ej. A2:B5) o al nombre de una
determinada área previamente guardada (ej.mes).
Como podrá apreciar, cuando hemos vinculado un rango de celdas hemos
incluido más de una columna, esto es por que tanto los cuadros de listas
simples como los combinados, aunque por lo general muestran sólo la
primera columna, almacenan la información de las restantes columnas.
Esto será de mucha ayuda cuando por ejemplo queramos asignarle un valor
distinto a las distintas posibilidades que nos muestre el control. Para
ejemplificar esto vaya al ejemplo que será expuesto en el siguiente
apartado.
BoundColumn
Siguiendo con el ejemplo anterior, ésta propiedad le permitirá configurar
que columna del rango de celdas vinculado al cuadro de lista (simple o
combinado) será utilizada para buscar el valor que será almacenado en el
control, una vez que se ha elegido entre una de las opciones desplegadas
en el control. Obviamente se almacenará el valor correspondiente a la fila
que fue seleccionada. Por defecto esta configurado en "1", esto es,
almacenará el mismo valor de la opción seleccionada.
Si por ejemplo, además tenemos vinculado el cuadro de lista a una celda
(LinkedCell), en esta celda será mostrado el valor almacenado por el
control. Para comprender de mejor forma lo anteriormente expresado le
recomendamos que vaya alejemplo que figura en el próximo apartado.
ListRow
Esta propiedad es prácticamente exclusiva de los cuadros de lista
(ListBox y ComoBox) y sirve para indicar el número de filas u opciones que
serán mostradas por el control. Si el número de opciones es considerable,
será recomendable utilizar esta propiedad, la cual por defecto toma el valor
de "8". En el caso de que el número de opciones sea mayor al número que
serán mostradas, el cuadro de lista generará automáticamente una barra de
desplazamiento.
Font
Esta propiedad sirve para configurar las fuentes de los textos que
aparecerán en el control, sean estos correspondientes a las opciones
desplegadas, al nombre visible del control (en el caso de un botón) o como
será mostrada la información introducida en un cuadro de texto. Al hacer
clic en esta propiedad se desplegará un cuadro de dialogo que lo guiará en
la configuración, el cual sigue los estándares de Excel o Windows, por lo que
no profundizaremos en su contenido.
Value
Esta propiedad denota el Valor que tendrá el control. Según sea la
interacción que tenga el control, el valor de éste cambiará. Por ejemplo en
el caso de un botón de alternar, la propiedad value toma los valores
"VERDADERO" o "FALSO" según se trate. En la caso de un botón de
control de número, la propiedad value tomará el valor de las secuencia
respectiva.
(Name)
Esta propiedad denota le nombre del control, por defecto Excel le asigna
un nombre compuesto por el tipo de control mas un correlativo, por ejemplo
"CommandButton1". Esto servirá posteriormente para identificar dicho
control y para configurarlo por ejemplo a través de macros o a través de
VBA.
Caption
Esta propiedad podríamos decir que especifica el nombre de fantasía o
comercial de control, esto es, el nombre con que el usuario de la planilla lo
verá. Esta propiedad es normalmente utilizada por los botones de
comando. Por defecto el valor de captionserá igual que el de name, aunque
esto es perfectamente modificable. Esta propiedad por ejemplo es útil
cuando le asignamos una macro a un control, ya que con ella podremos
darle al control un nombre visible de referencia a la actividad que realizará
la macro que será activará con dicho control.
Si bien es cierto éste ejemplo es bastante simple, de todas formas nos permite
visualizar como es la operatoria necesaria para la configuración de un control y, la
vez, nos permite comprobar lo fácil que es su utilización y la vistosidad que le
proporciona a nuestro libro de trabajo.