Вы находитесь на странице: 1из 22

Programacin

MACRO
Ester Burgos Lagos
Concepto
Una macro es la secuencia ordenada de los pasos o instrucciones que se deben
llevar a cabo para cumplir una tarea. Excel permite guardarlos con un nombre
determinado y despus ejecutarlos tantas veces como se quiera de una forma fcil
y rpida.

Las macros son muy tiles para tareas repetitivas, dado que una vez grabados nos
evitan tener que repetir de nuevo todos y cada uno de los pasos realizados para
hacer dicha tarea cada vez que necesitemos repetirla, con la ventaja y seguridad de
no olvidarnos de ningn paso, ni del orden correcto en que se deban ejecutar.



Creacin de Macros
Existen dos mtodos para crear una macro en Excel:

Automtico: Se trata de usar la grabadora de macros que posee Excel. Dicha
grabadora ira recogiendo cada uno de los pasos que demos con el mouse o con el
teclado y lo traducir a la instruccin correspondiente de VBA ,de una forma interna
y automtica. Despus de grabar una macro podemos revisar y modificar el cdigo
generado por la grabadora.

Manual: Debemos abrir el entorno de programacin de Excel VBA y teclear las
instrucciones y sentencias necesarias, lo que implica tener conocimiento de
programacin, como del modelo de objetos de Excel.



Consideraciones antes de grabar una Macro
Tanto para iniciar la grabacin de una macro , como para detenerla y aplicar alguna
otra opcin relacionada debemos hacerlo desde la ficha PROGRAMADOR, para lo
cual ha de estar visible.

La ficha PROGRAMADOR inicialmente, por defecto, no est visible, para hacerla
visible debemos ir al botn de Office, Opciones de Excel, Ms Frecuentes y dentro
del grupo Opciones principales para trabajar con Excel habilitar la casilla Mostrar
ficha de programador en la cinta de opciones.



Antes de empezar a grabar una macro conviene tener claro diversos puntos:

Es necesario conocer los pasos de la tarea que se quiere grabar, especialmente
cuando esta consta de un gran nmero de pasos, dado que es improductivo darse
cuenta en mitad de la grabacin que no estamos seguros de cul es el paso
siguiente, o que nos hemos equivocado tres pasos atrs.

Si la macro es compleja, es conveniente ejecutar la rutina ms de una vez o anotar
los pasos de la misma, dado que cuando se graba una macro de forma automtica
no existen las opciones de parar la grabadora o volver hacia atrs en algn paso , ya
que la grabadora de macro s graba todo lo que se hace, incluyendo los errores .

Si la macro se grabo mal, sol hay dos opciones: volver a repetir la macro entera, o
bien modificarla manualmente en el entorno de programacin .

El nombre de una macro, lo mas descriptivo posible de la funcin que realiza .
Este no debe ser ni muy largo, ni muy corto.
Los nombres deben ser continuos, es decir, si se componen de varias palabras
debemos poner la primera silaba de cada palabra con mayscula o usar el
guin bajo para separarlas.

El mbito de uso de una macro queda determinado por el lugar en el que se guarde
la macro grabada, lo cual depende a su vez de lo que haga la macro. Existen 3
posibilidad: Libro de macros personal, Este libro, Libro nuevo.
Es el lugar adecuado para guardar todas las macros que sean de tipo genrica, es
decir, que lleven a cabo tareas que no dependan de ningn libro en particular.
Tambin es el lugar para aquellas macros que se usen muy a menudo y por lo tanto
deben estar disponibles en cualquier sesin.

El libro de macro personal es un libro normal mente llamado PERSONAL.XLSB,
donde Excel guarda todas las macros genricas . Este libro se crea en forma
automtica al grabar por primera vez una macro genrica. Este libro queda oculto
de forma predeterminada y se guarda en el directorio de inicio de Excel,
usualmente llamado Inicio o XLSTART. Al activar Excel, este siempre mira en el
directorio de inicio y abre de forma automtica todos los libros que haya en dicho
directorio. Con ello PERSONAL.XLSB siempre estar disponible.

Por lo tanto si quiere llevar las macros grabadas en PERSONAL.XLSB a otro PC,
debera copiar dicho archivo y pegarlo en el directorio de Inicio o XLSTART del PC
destino.

Si en el PC destino existiese ya un PERSONAL.XLBS, debera renombrarlo, abrirlo y
copiar todas las macros al nuevo PEROSNAL.XLBS
Libro de Macro Personal
Est opcin es adecuada para macros que realicen tareas especficas ligadas a una
determinada hoja u hojas del libro activo. La macro se grabara dentro del libro
actual y por lo tanto solo estar disponible si est abierto el libro que la contiene. Si
la macro se necesitar en otro libro, entonces deber guardarla en el Libro de
Macros Personales o bien cargar este libro para que est la macro disponible.
Este Libro
Es la opcin mixta o intermedia entre las dos opciones anteriores, es decir, es
recomendable cuando la macro se necesitan para varias situaciones distintas en
distintos libros, pero a la vez no sean de uso muy frecuente o no se quiera
sobrecargar el El libro de macros personal. Las macros estarn disponibles
siempre que el libro este cargado.
Libro Nuevo
Sirve para asignar una combinacin de teclas a la macro de forma que al pulsarlas
se ejecute.
Mtodo Abreviado
Descripcin
Sirve como documentacin de la macro. Se puede apuntar la fecha de creacin y
una breve descripcin de la tarea o tareas que realiza. Puede ser til especialmente
cuando la macro realiza varias tareas simultneamente.
En el caso que vaya hacer operaciones o referencias a celdas o rangos, se debe
definir si se desea emplear referencias absoluta o relativas, dado que despus la
macro reproducir este comportamiento al ejecutarlo.

Durante la grabacin de una macro no se puede cambiar de un tipo de referencia a
otra.

Para activar la grabacin de referencia relativa debemos pulsar Usar referencia
relativa que est debajo del botn Grabar macro.

Referencias Absolutas: La macro se reproducir exactamente en las mismas celdas
seleccionadas en la hoja en la que se ejecute. Para grabarlo debemos situarnos en
cualquier celda distinta de la celda inicial donde empezaremos a grabar.

Referencia Relativa: En este caso si debemos posicionarnos inicialmente en la celda
en la cual queremos empezara hacer la tarea. Cuando se ejecute la macro, este
actuara sobre un rango de tamao igual al definido en la grabacin original, pero
tomando como celda de inicio la que en ese momento este seleccionada.
Tipo de Referencia
Crear una macro cuya funcin ser escribir en la celda B2 de cualquier hoja en la
que nos posicionemos la fecha actual, que obtendr del reloj del sistema. LA fecha
ser esttica, es decir, constante, al contrario del resultado de la funcin HOY(), que
se recalcula cada vez que se abre el libro que la contiene y por lo tanto siempre
refleja la fecha ms actual. As mismo a la fecha le daremos fuente Arial, tamao 12
y efecto de Negrita.
Ejemplo de creacin de una macro
1. Hacer visible la ficha Programador, si no lo estuviera y activarla.
2. Posicionarnos en la celda B2.
3. Elegiremos usar referencia relativa, pues escribir la fecha en la celda que
tengamos seleccionada en el momento de la ejecucin de la macro.
4. En la ficha Programador , grupo Cdigo, se visualizar el cuadro dilogo Grabar
macro, donde especificaremos los dos datos obligatorios.
a. El nombre de la macro: FechaActualEstatica
b. Guardar macro en: Este libro
5. Hacemos clic en el botn Aceptar , a partir de ese momento comienza el
proceso de grabacin, toda operacin que realice con el mouse o con el teclado
se transcribir a cdigo VBA.
6. En la celda B2 escribiremos =Hoy() y pulsamos la tecla ENTER
Ejemplo de creacin de una macro
Pasos a Seguir :
7. Volvemos a seleccionar la celda B2 y en su men contextual elegiremos copiar.
8. Pulsamos el botn secundario del mouse para volver aparecer el men
contextual y elegimos pegado especial, la opcin de valores, de esta forma no se
pegara la funcin, sino el valor que ha calculado.
9. Hacer clic en Aceptar.
10. A continuacin se colocar en la ficha Inicio y seleccionara fuente, tamao, y el
efecto en este caso negrita.
11. Ahora Vaya a ficha Programador, grupo Cdigo y pulsar la opcin Detener
grabacin, que solo esta activa durante el proceso de grabacin de una macro.
12. La macro est creada y lista para usarse.
Ejemplo de creacin de una macro
Pasos a Seguir :
Existen 4 formas de ejecutar una macro:

1. Desde el cuadro de dialogo Macro.
2. Mediante una combinacin de Teclas.
3. Mediante el botn en la barra de herramientas de acceso rpido.
4. Mediante un botn o control de formulario o un objeto grfico en la
propia hoja de clculo.
Ejecucin de Macro
Para ejecutar una macro desde el cuadro de dialogo Macro debemos de
posicionarnos en la ficha Programador, grupo Cdigo y clicar sobre el botn Macros.

Una vez aparezca el cuadro de dialogo basta con seleccionar el nombre de la macro
en el cuadro de lista Nombre de Macro y pulsar el botn Ejecutar.

Esta forma est pensada esencialmente para probar las macros antes de asociarlos
definitivamente a la barra de herramientas o a algn objeto o tambin para
aquellas macros que se usen con poca frecuencia.
Desde el cuadro de dialogo Macro
Se puede asignar una combinacin de teclas que comience con la tecla CTRL+letra o
CTRL+Mays+letra.

LA combinacin de teclas de mtodo abreviado suplantar a cualquier combinacin
de teclas de mtodo abreviado predeterminada equivalente en Excel. En la ayuda
de Excel se puede obtener una lista de teclas de mtodo abreviado que utilicen la
tecla CTRL que ya estn asignadas buscando el enunciado Teclas de funcin y de
mtodo abreviado en Excel
Mediante una combinacin de teclas
Esta es una de las opciones ms tiles si se trata de una macro que se realizo en
forma genrica aplicables a cualquier libro o ventana activa y se usa con frecuencia.

Para colocar una macro en la barra de acceso rpido debe clicar en el botn de
Office, Opciones de Excel, Personalizar y en la lista desplegable Comandos
disponibles en:, elegir la categora Macros, lo que har aparecer la lista de todas las
macros disponibles.

Seleccionamos la macro deseada y clicando sobre el botn Agregar hacemos que
quede incluido en la barra asociada a un botn.

Mediante un botn en la barra de herramientas de acceso rpido
Se puede asociar macro dentro de una hoja de clculo de las siguientes formas:

1. Controles de Formulario: Son los controles disponibles en ficha Programador,
grupo Controles, opcin Insertar Controles de Formulario. El ms usado de
ellos es el control Botn (control de formulario).

2. Objetos grficos: Dentro de esta categora entra cualquier de las formas
existentes en la ficha Insertar, grupo Ilustraciones, Opciones de Formas, as
como fotografas o ilustraciones y los propios grficos creados en Excel.

Mediante un botn o control de formulario o un objeto grfico en la propia hoja de
clculo.
Por ejemplo asociarlo a un Botn. Debemos seguir los siguientes pasos:

En la ficha Programador, grupo Controles, opcin Insertar Controles de
formulario, elegir el control Botn (control de formulario), en ese momento el
cursor se convertir en una delgada cruz griega de color negro, que podemos
observar al posicionarnos encima de la hoja de clculo.
Pulsar el botn primario del mouse y mantenindolo pulsado arrastrar hasta crear
el botn del tamao deseado, en ese momento soltar el botn y automticamente
aparecer el cuadro de dialogo Asignar macro
Seleccionar el nombre de la macro a asociar y pulsar el botn Aceptar.
Asociar una Macro a un Control de Formulario
Hacer clic con el botn secundario del mouse encima del objeto (forma, grfico,
etc.), lo que har aparecer el men contextual del mismo.

Seleccionar y pulsar la opcin Asignar Macro, que har aparecer el cuadro de
dialogo Asignar Macro.

Seleccionar el nombre de la macro a asociar y pulsar el botn aceptar.
Asociar una macro a una forma, fotografa u objeto grfico
Para ver o modificar el cdigo de programacin generado al grabar una macro
debemos abrir el entorno de programacin de Visual Basic para Aplicaciones, lo que
se puede hacer de 2 formas desde la ficha programador, cdigo

La opcin genrica: pulsando el botn Visual Basic que abre el entorno en el
mismo punto y estado en que se cerr en la ltima ocasin.

La opcin Especifica: Pulsando el botn Macros que abre el cuadro de dialogo
Macro, donde al seleccionar una macro y pulsando el botn Modificar nos
aparecer el cdigo de dicha macro.

La opcin especifica adems nos permite tambin eliminar las macros no deseadas.

En caso de querer ver el cdigo de una macro grabada en el libro de macros
personales es necesario previamente desocultar el archivo PERSONAL.XLSB, en
caso contrario no podr ver el cdigo y recibir un mensaje de error.
Entorno de programacin Visual Basic para Aplicaciones (VBA)

Вам также может понравиться