Macros de Excel
Macros de Excel
Macros de Excel
MACROS DE EXCEL
INTRODUCCIÓN A LOS EVENTOS VBA
Vamos a empezar esta serie de artículos con el tema de Macros donde veremos la aplicación de
30 de ellas las cuales nos pueden servir para contar con archivos de Excel más adaptado a
nuestras necesidades.
En esta primera entrega vamos a ver el concepto Eventos VBA para entender mejor la aplicación
de las macros que veremos en este capítulo.
Para poder aplicar macros, es necesario tener configurado Excel para que pueda ejecutar
Macros y para ellos nos dirigimos a las opciones de Excel (Archivo, Opciones), luego nos
ubicamos en la última opción de la ventana de opción llamada Centro de Confianza y luego
damos clic en el botón Configuración del Centro de confianza:
Con esto se abre la ventana del Centro de Confianza donde nos debemos ubicar en la opción
Configuración de macros y en este ítem debemos seleccionar de las opciones que aparecen en
la parte derecha de esta ventana la opción Habilitar todas las macros y habilitar la casilla que
dice Confiar en el acceso al modelo de objetos de proyectos de VBA:
2
CENTRO DE DESARROLLO AGROEMPRESARIAL CDA - CHIA
Vemos entonces que en la parte derecha del Editor de Visual Basic, ya aparece un espacio en
blanco lo que significa que está en modo de edición donde ya podemos digitar los códigos que
necesitemos programar y de esta manera, los códigos que ingresemos serán aplicados
directamente sobre la Hoja1.
Encima del espacio en blanco de edición de macros, tenemos dos listas de opciones:
4
CENTRO DE DESARROLLO AGROEMPRESARIAL CDA - CHIA
Al seleccionar este objeto Worksheet, aparecerán en el espacio de edición de códigos las líneas
de inicio y de fin de la Macro que se ejecutará al presentarse algún EVENTO en el Libro de
Excel (Worksheet):
5
CENTRO DE DESARROLLO AGROEMPRESARIAL CDA - CHIA
La
primea línea marca el principio de la macro y vamos a desglosar esta línea para entender un
poco mejor esta macro:
Private Sub: significa Subrutina (Sub) o macro de acceso Privado (Private) y este acceso se
aplica cuando se intenta ejecutar desde otra macro.
Worsheet: Corresponde a una macro que se aplicará a la hoja de Excel (Worksheet) sobre la
que estemos ubicados desde la venta de explorador de proyectos
SelectionChange(ByVal Target As Range): Corresponde al evento Cambio de selección y
significa que los códigos que vayamos a programar en esta macro se ejecutaran
automáticamente al presentarse un cambio en la selección de las celdas (Target) que
indiquemos.
Es importante marcar que hay varios eventos o acciones que se pueden dar en la interacción de
las hojas de un libro de Excel como es Activar, Calcular, Cambiar Selección, entre otras y es
precisamente desde la aplicación de estos eventos que se pueden ejecutar macros. La
configuración de los eventos la podemos realizar desde el segundo cuadro de opción que
tenemos encima del espacio de programación de códigos:
Vemos que tenemos muchos otros eventos que podemos seleccionar para ejecutar macros de
manera automática y dependiendo del evento seleccionado se podrán ejecutar de una u otra
manera. Por ejemplo, si seleccionamos el evento Activate, la macro que programemos se
ejecutara automáticamente al Activarse la Hoja 1(en este caso que es desde donde estamos
ubicados), por ejemplo, si desde el libro de Excel estamos ubicados en la Hoja 2 y luego damos
clic en la pestaña para pasar a la Hoja 1, en ese momento se ejecutará la macro que
programemos en este evento. Hagamos el ejercicio y seleccionemos el evento Activate:
6
CENTRO DE DESARROLLO AGROEMPRESARIAL CDA - CHIA
Vemos que en el espacio de edición de códigos aparecen la línea de inicio y de fin para el
evento Activate de la hoja que seleccionamos y debajo quedaron las líneas de inicio y de fin del
evento SelectionChange también para la misma hoja pero estas últimas líneas o la podemos
borrar o desde que no agreguemos códigos adicionales las podemos dejar.
Vamos a pegar el siguiente código dentro de las líneas de inicio y de fin de la macro que se
activa con el evento Activate:
MsgBox "Has seleccionado la Hoja 1"
Esa línea lo que haces mostrar un mensaje informativo al momento de activarse la Hoja 1.
Vamos a Excel y probemos a cambiar entre las hojas y veremos como se muestra el mensaje al
activar o seleccionar la Hoja 1:
7
CENTRO DE DESARROLLO AGROEMPRESARIAL CDA - CHIA
Durante las siguientes entregas, veremos el uso que podemos dar a distintos eventos que
tenemos a disposición en VBA.