You are on page 1of 28

Aprendiendo Como Comenzar en VBA.

Si todava no has visto el tema anterior, te invito a que lo leas ahora


pulsando Clic Aqu. Una vez termines de leer el tema anterior vuelve ha este
tema para continuar.
Hoy vamso a ver como comenzar en VBA, y para eso vamos conocer la Barra
de Herramientas de VBA en excel. Comencemos entonces:

Programar en Excel Como comenzar en VBA


Antes de comenzar a programar macros es necesario que conozcas la barra de
herramientas VBA y las distintas formas de acceder al editor de macros, que es
la herramienta donde escribirs el cdigo de las mismas.

En las secciones siguientes te ensearemos ambos conceptos.

Programar en Excel Barra de Herramientas VBA


El primer paso para empezar a programar macros es familiarizarnos con las
herramientas que nos ofrece Excel para programarlas.

Excel posee una Barra de Herramientas de Macros o VBA. Puedes acceder a


la misma desde la Pestaa DESARROLLADOR> Seccion Codigos. Dicho
men se ve como en la fotografa a continuacin.

Programar en Excel Conociendo el Editor VBA


El Editor de Visual Basic es la aplicacin que trae Excel desde donde se
escriben y guardan las macros. Tienes dos formas de acceder al editor:

A. Desde la Pestaa DESARROLLADOR > Seccin Cdigos > Visual Basic


B. Desde el teclado (Teclas de Mtodo Abreviado): ALT+F11
(el acceso a la Barra de Herramientas de la opcin 1 y 2 los explicamos en la
seccin anterior)
Consejo: cualquiera de las 2 formas te abrir el editor de visual basic (nuestra
forma preferida es la nmero 2,
dado que es ms rpido presionar ALT + F11 que abrir las pestaas con el
ratn).
Una vez que hayas accedido al editor de visual basic vers algo similar a la
figura siguiente (no importa si no loves estrictamente similar, eso depender de
las ventanas que tengas visibles y ocultas).
El editor contiene 3 ventanas principales: la Ventana Proyecto (parte izquierda
superior), la Ventana de Cdigo (parte derecha) y la Ventana Propiedades
(parte izquierda inferior).

La Ventana Proyecto VBA Project: esta ventana muestra los libros Excel (xls)
o los complementos (xla) abiertos. Usualmente vers nombres del tipo
VBAProject y entre parntesis el nombre del archivo o complemento Excel.
Veamos el caso de VBAProject (Libro1). Simplemente significa que tienes
abierto un libro Excel llamado Libro 1. Luego cuelgan 3 carpetas ms: Hoja1
(Hoja1), ThisWorkbook y Modulo (no importa si ves todos estos elementos
ahora, luego te ensearemos como activarlos). Estas carpetas es donde
habitan las macros. Haciendo doble clic en ellas activars la ventana donde se
escriben las macros.

Ventana de Cdigo: esta es el lugar donde escribiremos el cdigo propiamente


dicho de las macros. Como no hemos escrito ninguna macro todava veremos
la hoja en blanco. Recuerda bien estas dos ventanas, ya que las usaremos a
continuacin para escribir nuestra primera macro.
Como vers el Editor de VB tiene muchas ventanas. Pero de momento solo nos
interesan las dos ventanas que te indicamos anteriormente: la Ventana
Proyecto VBA Project y la Ventana de Cdigo donde se escribe el cdigo de
las macros. La Ventana de Propiedades la dejaremos para ms adelante
porque de momento no nos interesa.

Recuerda: presionando las teclas ALT+F11 puedes ir desde Excel al Editor o


desde el Editor al Excel de forma alterna (debes mantener presionada la tecla
ALT y presionar F11 repetidas veces, vers como pasas de Excel al editor y
viceversa).

Si ests en el editor y quieres regresar a la hoja Excel tambin puedes utilizar


el cono de Excel que se encuentra en el men superior del editor (primer cono
de la izquierda, con la X de Excel).

Hasta aqu con este tema nos vemos en el prximo post donde voy a compartir
contigo Como Crear Una Macro. Te dejo el enlace:

mtodo ms utilizado suele ser el nmero 3 mediante el cual primero grabars


y luego hars ajustes manuales en el cdigo para hacerlo ms eficiente y que
se ejecute ms rpido.

En este post vamos a ver como se escribe una macro manualmente (mtodo
1).

Programar en Excel Escribiendo Mi primera Macro


Vamos a escribir manualmente nuestra primera macro ahora!. Es una macro
muy sencilla, pero te servir para orientarte en el Editor de Visual Basic y
reconocer los pasos requeridos para hacer una macro.

Objetivo de nuestra macro

Escribir el valor 1.500 en la celda A1 de la hoja Excel.

Que significa esto? Que comenzaremos con una hoja Excel vaca y luego de
ejecutar la macro vers que
aparece el valor 1.500 en la celda A1. El valor lo pondr automticamente la
macro cuando nosotros se lo
indiquemos.

Suena demasiado simple, cierto? Sin embargo es suficiente como para


comenzar y que aprendas generalidades
que luego aplicars en todas tus macros. Como es una macro sencilla vamos a
escribirla manualmente para que
comiences a empaparte del editor de macros y sus partes.

Programar en Excel Escribiendo la macro

Bueno, es importante que recuerdes el objetivo: esta macro escribir


automticamente el valor 1.500 en la celda A1 de tu hoja Excel. Los pasos que
debes seguir son los siguientes:

1. Prepara el Editor de Visual Basic

1.1 Crea un nuevo libro Excel y gurdalo con el nombre Libro 1.

1.2 Abre el editor de Visual Basic con las teclas ALT+F11.

1.3 Doble clic en VBAProject (Libro1) para ver las carpetas.

1.4 Doble clic en Hoja1 (Hoja1) para empezar a escribir el cdigo de la macro.
2. Escribiros la macro

2.1 En la ventana de macros escribe textualmente el siguiente cdigo:

Sub MiPrimeraMacro()

Esta macro escribe el valor 1500 en la celda A1

Range(A1).Value = 1500

End Sub

2.2 Si la macro est bien copiada vers que el Sub y el End Sub quedan de
color azul y la segunda linea queda en verde. Los colores los asigna
automticamente el editor y te lo explicaremos ms adelante.

De momento no te preocupes por el cdigo escrito. Ms adelante te


ensearemos a interpretarlo. Ahora que ya tienes la macro escrita pasemos a
la siguiente seccin para ver como ejecutarla. Si no entendiste algo, por favor
revisa detenidamente todo este articulo de Como Crear una Macro.

mtodo ms utilizado suele ser el nmero 3 mediante el cual primero grabars


y luego hars ajustes manuales en el cdigo para hacerlo ms eficiente y que
se ejecute ms rpido.
En este post vamos a ver como se escribe una macro manualmente (mtodo
1).

Programar en Excel Escribiendo Mi primera Macro

Vamos a escribir manualmente nuestra primera macro ahora!. Es una macro


muy sencilla, pero te servir para orientarte en el Editor de Visual Basic y
reconocer los pasos requeridos para hacer una macro.

Objetivo de nuestra macro

Escribir el valor 1.500 en la celda A1 de la hoja Excel.

Que significa esto? Que comenzaremos con una hoja Excel vaca y luego de
ejecutar la macro vers que
aparece el valor 1.500 en la celda A1. El valor lo pondr automticamente la
macro cuando nosotros se lo
indiquemos.

Suena demasiado simple, cierto? Sin embargo es suficiente como para


comenzar y que aprendas generalidades
que luego aplicars en todas tus macros. Como es una macro sencilla vamos a
escribirla manualmente para que
comiences a empaparte del editor de macros y sus partes.

Programar en Excel Escribiendo la macro

Bueno, es importante que recuerdes el objetivo: esta macro escribir


automticamente el valor 1.500 en la celda A1 de tu hoja Excel. Los pasos que
debes seguir son los siguientes:

1. Prepara el Editor de Visual Basic

1.1 Crea un nuevo libro Excel y gurdalo con el nombre Libro 1.

1.2 Abre el editor de Visual Basic con las teclas ALT+F11.

1.3 Doble clic en VBAProject (Libro1) para ver las carpetas.

1.4 Doble clic en Hoja1 (Hoja1) para empezar a escribir el cdigo de la macro.
2. Escribiros la macro

2.1 En la ventana de macros escribe textualmente el siguiente cdigo:

Sub MiPrimeraMacro()

Esta macro escribe el valor 1500 en la celda A1

Range(A1).Value = 1500

End Sub

2.2 Si la macro est bien copiada vers que el Sub y el End Sub quedan de
color azul y la segunda linea queda en verde. Los colores los asigna
automticamente el editor y te lo explicaremos ms adelante.

De momento no te preocupes por el cdigo escrito. Ms adelante te


ensearemos a interpretarlo. Ahora que ya tienes la macro escrita pasemos a
la siguiente seccin para ver como ejecutarla. Si no entendiste algo, por favor
revisa detenidamente todo este articulo de Como Crear una Macro.

Programar en Excel - Como Ejecutar una Macro paso a paso.


Que tal, como te va? Avanzando poco a poco verdad! En el tema anterior vimos
como crear una macro, si todava no lo has visto por favor haz clic Aqu.
Hoy vamos a ver como Ejecutar la macro que escribimos en el tema anterior,
por eso es importante que sigas todos estos tema paso a paso. Comencemos
entonces:

Programar en Excel Ejecutar una macro


Si ya tienes escrita la macro en el editor, ahora podrs ejecutarla, o sea hacer
que funcione. Tienes 2 formas de hacer esto:

A. Ejecutar una macro desde el mismo Editor: si te posicionas en cualquiera de


las lneas de cdigo de la macro y luego presionas la tecla F5 la macro se
ejecutar (para ver el resultado puedes volver a la hoja Excel con ALT+F11).

B. Ejecutar una macro desde Excel: otra forma de ejecutar una macro es desde
el mismo Excel. Puedes volver a la hoja Excel con ALT+F11 e ir en la Pestaa
DESARROLLADOR > Seccion Codigos > Macros. Se abrir un cuadro que
contiene una lista con los nombres de las macros creadas. Selecciona
MiPrimeraMacro y haz clic en Ejecutar.

Si has seguido cualquiera de los 2 pasos anteriores ya podrs ver el resultado


de la macro. Qu hizo la Macro? Si te fijas en el Libro 1, Hoja 1, Celda A1
vers que se escribi el valor 1.500. Eso es exactamente lo que queramos
hacer con nuestra macro, as que tarea cumplida. Hemos escrito un valor en
una celda Excel desde una macro !

Muy bien, puedes empezar a practicar, puedes escribir una macro que escriba
un valor en la Celda H20 o en otra celda donde tu desees. En el Prximo Tema
vamos a ver como comprender las macros Grabadas o escritas. Te dejo el
enlace:
Programar en Excel - Como Ejecutar una Macro paso a paso.

Que tal, como te va? Avanzando poco a poco verdad! En el tema anterior vimos
como crear una macro, si todava no lo has visto por favor haz clic Aqu.
Hoy vamos a ver como Ejecutar la macro que escribimos en el tema anterior,
por eso es importante que sigas todos estos tema paso a paso. Comencemos
entonces:

Programar en Excel Ejecutar una macro


Si ya tienes escrita la macro en el editor, ahora podrs ejecutarla, o sea hacer
que funcione. Tienes 2 formas de hacer esto:

A. Ejecutar una macro desde el mismo Editor: si te posicionas en cualquiera de


las lneas de cdigo de la macro y luego presionas la tecla F5 la macro se
ejecutar (para ver el resultado puedes volver a la hoja Excel con ALT+F11).

B. Ejecutar una macro desde Excel: otra forma de ejecutar una macro es desde
el mismo Excel. Puedes volver a la hoja Excel con ALT+F11 e ir en la Pestaa
DESARROLLADOR > Seccion Codigos > Macros. Se abrir un cuadro que
contiene una lista con los nombres de las macros creadas. Selecciona
MiPrimeraMacro y haz clic en Ejecutar.

Si has seguido cualquiera de los 2 pasos anteriores ya podrs ver el resultado


de la macro. Qu hizo la Macro? Si te fijas en el Libro 1, Hoja 1, Celda A1
vers que se escribi el valor 1.500. Eso es exactamente lo que queramos
hacer con nuestra macro, as que tarea cumplida. Hemos escrito un valor en
una celda Excel desde una macro !

Muy bien, puedes empezar a practicar, puedes escribir una macro que escriba
un valor en la Celda H20 o en otra celda donde tu desees. En el Prximo Tema
vamos a ver como comprender las macros Grabadas o escritas. Te dejo el
enlace:

Programar en Excel - Aprendiendo a Comprender la Macro escrita.

Antes de Comenzar con el tema hoy, te pido como siempre que veas el tema
anterior, si todava no lo has visto. Haz clic aqu y mira el tema anterior, por
favor no pierdas la secuencia, recuerda que al terminar podrs programar y
crear tus propias macros.

Hoy vamos a tratar de entrarle mas adentro al asunto, sabes como? Pues hoy
vamos a comprender cada una de las lineas dentro de la macro escrita.
Comencemos entonces:

Programar en Excel Comprender la macro escrita

Recuerda que el propsito de nuestra primera macro fue escribir el valor 1500
en la celda A1 de Excel. La macro ya fue escrita y ejecutada en los pasos
anteriores. Ahora vamos a analizar cada una de las lneas de su cdigo.

Recordemos como se vea nuestra macro escrita en el editor:

* los colores del cdigo los asign automticamente el editor.


Esta macro tiene 4 lneas de cdigo, por eso es tan sencilla (cuando termines
este manual seguro podrs escribir macros de cientos o quizs miles de lneas
de cdigo!). Veamos que significa cada lnea. Las explicaciones que vienen a
continuacin suelen aplicarse a todas las macros, as que es importante que
las comprendas.

1 lnea de cdigo: el comentario

Esta macro escribe el 1500 en la celda A1

Sub MiPrimeraMacro()

Range(A1).Value = 1500

End Sub

Primera Linea: Comentario de la Macro escrita

La primera lnea de una macro suele ser un comentario que hacemos


sobre la misma, donde podemos poner lo que queramos.
Los comentarios se pueden poner en cualquier lnea y cantidad.
En la medida que nuestras macros crecen los comentarios se vuelven
muy tiles para nuestra propia referencia.
Un comentario siempre comienza por un signo '. Si tipeamos dicho signo
seguido de un texto y luego damos al Enter, el editor detecta que es un
comentario y lo pinta verde automticamente.
Un comentario no tiene efectos sobre la macro, es solo para nuestra
referencia.

Recuerda: los comentarios son muy tiles para comentar nuestras macros y
siempre deben comenzar con el signo . Si has puesto bien dicho signo al
comienzo de la lnea, el editor detecta automticamente que es un comentario
y lo pinta de verde luego de darle a Enter.

Segunda Linea El nombre de la Macro escrita

Aqu es donde comienza realmente la macro.


Toda macro siempre comienza con la palabra Sub, luego un espacio,
luego un nombre (sin espacios intermedios) y finalmente los parntesis (). Ms
adelante veremos algunas excepciones a esto.
Este nombre luego lo utilizaremos para ejecutar la macro.
Luego de escribir esta lnea y darle a enter el Editor detectar que es el
nombre de la macro y pondr la palabra Sub en color azul de forma automtica.

Recuerda: el nombre de la macro siempre comienza con la palabra Sub, luego


un espacio, luego el nombre que quieras ponerle a tu macro (SIN espacios
intermedios) y finalmente los parntesis.

Tercera Linea: La instruccin de la Macro escrita

Esta es la instruccin principal de nuestra macro (el corazn de la


macro). Con este cdigo logramos nuestro objetivo (que la macro escriba el
valor 1500 en la celda C10).
Recuerdas el comienzo del manual donde hablbamos de Objetos
(partes de Excel), Propiedades
(caractersticas) y Mtodos (acciones)?. Aqu tenemos un ejemplo al respecto.
Programar macros siempre
consiste en lo mismo: primero hacer referencia al objeto y luego asignarle una
propiedad o mtodo. En nuestro
ejemplo:

Range(A1).Value = 1500

Range(A1). es el objeto

Value es la propiedad

= 1500 es el valor que le damos a la propiedad

Esta lnea de cdigo se interpreta as: a la celda C10 de Excel asignarle


el valor 1500.

Recuerda: siempre debes hacer referencia a un objeto para luego asignarle


propiedades o mtodos.

Cuarta Linea: El Fin de la Macro escrita

Una macro siempre termina con la instruccin End Sub.


Luego de escribir esto y darle a Enter, el Editor detectar que es el fin de
la macro y lo pondr en color azul de forma automtica.

Recuerda: siempre debes finalizar tu macro con la instruccin End Sub.

Muy bien, que tal? interesante verdad?


Con estos pasos al terminar estars en la capacidad de crear tu propia macro,
tu propia plantilla automatizada. Continuamos hablando ms sobre el tema en
el siguiente artculo.

Ahora recordemos brevemente el significado de cada lnea de cdigo:

1 lnea: es el comentario de la macro (siempre comienza con el signo )

2 lnea: es el nombre de la macro (siempre se comienza con Sub)

3 lnea: es la instruccin principal de la macro

4 lnea: es el fin de la macro (siempre termina con End Sub)

La mayora de las macros llevan una estructura similar, aunque hay algunas
excepciones.

El comentario que aparece al comienzo lo ponemos a gusto y sirve para


recordarnos lo que queremos hacer con esa macro. El comentario siempre
comienza con el signo y no afecta para nada a la macro. Es un simple texto.

El nombre lo pondremos a gusto, anteponiendo la palabra Sub los parntesis


de apertura y cierre al final. Conviene dar un nombre que nos indique que hace
la macro.

La instruccin principal la veremos un par de prrafos ms abajo. Este cdigo


siempre vara segn lo que se quiera hacer con la macro en cuestin.

El fin siempre es igual, con la frase End Sub.

As que solo nos queda explicar con ms detalle la instruccin principal de la


macro. En general, las lneas de cdigo ms importantes y donde debemos
usar nuestros conocimientos de objetos, propiedades y mtodos son las que se
encuentran entre las instrucciones Sub y End Sub. Es all donde realmente se
cocina todo. Ese es el verdadero corazn de la macro.

Al comienzo del primer tema te mencionaba que las macros consisten en


operar sobre un Objeto, ya sea alterando una de sus Propiedades o ejecutando
un Mtodo sobre el mismo.

Recuerda: para aprender a programar macros debes aprender cuales son los
objetos, propiedades y mtodos de Excel. No olvides la definicin de los
mismos:

Objeto de una macro


Es una parte de Excel

Por ejemplo: una celda de Excel, una hoja, un grfico.

Propiedad de una macro

Es una caracterstica del objeto

Por ejemplo: el valor de la celda, el nombre de una hoja, el color de un grfico.

Mtodo de una macro

Es una accin sobre el objeto

Por ejemplo: copiar la celda, borrar la hoja, agrandar el grfico.

Como te comentaba al comienzo, la lnea de cdigo ms importante de


nuestra macros es:

Range(A1).Value = 1500

Ahora ya estamos en condiciones de identificar mejor los objetos, propiedades


y mtodos de la misma.

Range(A1) es el objeto, recuerda que siempre que hacemos macros primero


debemos indicar el objeto Excel sobre el que vamos a operar. En este caso
usamos el objeto Range (Rango). El objeto Range es el que se utiliza para
hacer referencia a una celda o rango Excel. Luego se escribe la referencia de
la celda Excel (letra de columna y nmero de fila) entre comillas y parntesis.
Ya le hemos indicado a la macro que deber ocuparse de la celda A1 (objeto).
Ahora debemos indicarle que hacer con ella (propiedad o mtodo).

Value = 1500 es la propiedad, que le asignaremos al objeto. Siempre


empezamos por el objeto para luego asignarle una propiedad o mtodo. En
este caso usamos la propiedad Value (Valor) que nos permite asignar un valor
al objeto range, anteponiendo un signo igual y luego el valor que deseamos.

Esta macro es muy sencilla y no posee ningn mtodo.

Hasta aqu hemos visto un ejemplo de Objetos y propiedades. Ha medida que


avancemos iras conociendo mas ejemplos que incluyan mtodos.
Ahora recordemos brevemente el significado de cada lnea de cdigo:

1 lnea: es el comentario de la macro (siempre comienza con el signo )

2 lnea: es el nombre de la macro (siempre se comienza con Sub)

3 lnea: es la instruccin principal de la macro

4 lnea: es el fin de la macro (siempre termina con End Sub)

La mayora de las macros llevan una estructura similar, aunque hay algunas
excepciones.

El comentario que aparece al comienzo lo ponemos a gusto y sirve para


recordarnos lo que queremos hacer con esa macro. El comentario siempre
comienza con el signo y no afecta para nada a la macro. Es un simple texto.

El nombre lo pondremos a gusto, anteponiendo la palabra Sub los parntesis


de apertura y cierre al final. Conviene dar un nombre que nos indique que hace
la macro.

La instruccin principal la veremos un par de prrafos ms abajo. Este cdigo


siempre vara segn lo que se quiera hacer con la macro en cuestin.

El fin siempre es igual, con la frase End Sub.

As que solo nos queda explicar con ms detalle la instruccin principal de la


macro. En general, las lneas de cdigo ms importantes y donde debemos
usar nuestros conocimientos de objetos, propiedades y mtodos son las que se
encuentran entre las instrucciones Sub y End Sub. Es all donde realmente se
cocina todo. Ese es el verdadero corazn de la macro.

Al comienzo del primer tema te mencionaba que las macros consisten en


operar sobre un Objeto, ya sea alterando una de sus Propiedades o ejecutando
un Mtodo sobre el mismo.

Recuerda: para aprender a programar macros debes aprender cuales son los
objetos, propiedades y mtodos de Excel. No olvides la definicin de los
mismos:

Objeto de una macro

Es una parte de Excel

Por ejemplo: una celda de Excel, una hoja, un grfico.


Propiedad de una macro

Es una caracterstica del objeto

Por ejemplo: el valor de la celda, el nombre de una hoja, el color de un grfico.

Mtodo de una macro

Es una accin sobre el objeto

Por ejemplo: copiar la celda, borrar la hoja, agrandar el grfico.

Como te comentaba al comienzo, la lnea de cdigo ms importante de


nuestra macros es:

Range(A1).Value = 1500

Ahora ya estamos en condiciones de identificar mejor los objetos, propiedades


y mtodos de la misma.

Range(A1) es el objeto, recuerda que siempre que hacemos macros primero


debemos indicar el objeto Excel sobre el que vamos a operar. En este caso
usamos el objeto Range (Rango). El objeto Range es el que se utiliza para
hacer referencia a una celda o rango Excel. Luego se escribe la referencia de
la celda Excel (letra de columna y nmero de fila) entre comillas y parntesis.
Ya le hemos indicado a la macro que deber ocuparse de la celda A1 (objeto).
Ahora debemos indicarle que hacer con ella (propiedad o mtodo).

Value = 1500 es la propiedad, que le asignaremos al objeto. Siempre


empezamos por el objeto para luego asignarle una propiedad o mtodo. En
este caso usamos la propiedad Value (Valor) que nos permite asignar un valor
al objeto range, anteponiendo un signo igual y luego el valor que deseamos.

Esta macro es muy sencilla y no posee ningn mtodo.

Hasta aqu hemos visto un ejemplo de Objetos y propiedades. Ha medida que


avancemos iras conociendo mas ejemplos que incluyan mtodos.

Como Grabar una Macro


En los temas pasado vimos como escribir una macro, analizamos los cdigos y
el orden que deba llevar. Tambin identificamos el objeto mtodo y
propiedades. Ya viste el tema anterior a este? si no lo haz visto haz Clic Aqu.

Hoy vamos a conocer como grabar una macro con la grabadora de macros.
Eso quiere decir que ya no tendrs mas limitantes en escribir una macro
sencilla, ya que la grabadora lo hace por ti. Veamos entonces:

Como Grabar una Macro

A la hora de crear una nueva macro, existen 3 mtodos.

A. Escribirla manualmente

B. Utilizar la grabadora de macros

C. Combinacin de los 2 mtodos anteriores

(grabarla y luego retocarla manualmente)

En cada situacin utilizars un mtodo distinto. Por ejemplo, las macros muy
sencillas las puedes escribir manualmente porque tienen pocas lneas y ya las
conoces. En otros casos la podrs crear con la grabadora de macros y olvidarte
del cdigo VBA. Sin embargo, en la medida que progreses con las macros
vers que el mtodo ms utilizado suele ser el nmero 3 mediante el cual
primero grabars y luego hars ajustes manuales en el cdigo para hacerlo
ms eficiente y que se ejecute ms rpido.

En los temas anteriores vimos como se escribe una macro de forma manual.
Ahora veremos como utilizar la grabadora de macros. Como te
mencionbamos antes, la ventaja de la grabadora es que prcticamente
no requiere conocimientos de programacin y cdigo VBA. Simplemente
encendemos la grabadora, ejecutamos las acciones y listo. La grabadora
genera el cdigo automticamente .

Mi primera Macro

Vamos a grabar una macro, si! nuestra primera macro ahora!. Es la misma
macro que hicimos en el captulo anterior, pero esta vez la haremos con la
grabadora de macros.

Objetivo de nuestra macro

Escribir el valor 1.500 en la celda A1 de tu hoja Excel.

que significa esto? Que comenzaremos con una hoja Excel vaca y luego de
ejecutar la macro vers que aparece el valor 1.500 en la celda A1. El valor lo
pondr automticamente la macro cuando nosotros se lo indiquemos.
Suena demasiado simple, cierto? Sin embargo es suficiente como para
comprender la metodologa de funcionamiento de la grabadora de macros.

Grabando la macro

Excel trae incorporada una grabadora de macros. La misma funciona de forma


muy fcil. Encendemos la grabadora, ejecutamos las acciones que nos
interesan sobre la hoja Excel, detenemos la grabadora ylisto!. Excel escribe
de forma automtica el cdigo VBA de la macro.

Ahora podemos hacer un experimento muy interesante. Repetir nuestra


primera macro, pero esta vez hacindola con la grabadora de macros. Sigue
los pasos a continuacin:

1. Vamos a grabar una macro

1.1 Ve a la Pestaa Desarrollador> Seccin Cdigos

1.2 Selecciona la opcin Grabar macro

1.3 Se abrir un cuadro de dilogo como el que se muestra a continuacin.


1.4 Borra donde dice Macro1 y escribe MiPrimeraMacro. Ese ser el nombre
que le daremos a nuestra macro.
1.5 Presiona Aceptar y la macro comenzar a grabar todo lo que hagas.

1.6 Posicinate en la celda A1 y escribe el valor 1500.

2. Cuando comienza a grabar la macro el comando Grabar Macro cambia a


Detener Grabacin Fjate en la Imagen. Este botn te permitir parar la
grabacin y finalizar la macro.
Hasta aqu con este articulo, te pido que tomes accin, en el prximo capitulo
vamos a ver como nos quedo la macro.

Programar en Excel - Conociendo como quedo la Macro Grabada dentro de VBA.

Hoy vamos a dar continuidad al tema anterior si todava no has ledo el tema
anterior por favor haz clic en Aqu! una vez termines de leer, por favor vuelve
nuevamente a qui para seguir con el tema.

Muy bien, vamos a conocer que tal nos quedo la macro grabada desde Visual
Basic para aplicaciones. Podras ver la diferencia entre la macro escrita y la
macro grabada.

Entonces veamos como quedo la Macro grabada:

Accede al editor de visual basic con ALT+F11.

Debes hacer clic en Mdulo1 para visualizar el cdigo de la nueva macro


grabada. Vers una pantalla como
la siguiente:
* Podrs observar que el cdigo que se grab es distinto que el cdigo que
habamos escrito cuando hicimos la macro manualmente. Ms adelante en este
mismo captulo analizaremos y explicaremos las diferencias.

Vamos a probar la macro pulsando F5

Vuelve a Excel con ALT+F11.

Vers que la celda A1 tiene el valor 1500 porque lo escribimos mientras


grabbamos la macro.

Para ver como opera la macro borra dicho valor.

Abre el men de macros desde la Pestaa Desarrollador >Seccion Codigo >


Macros

Selecciona MiPrimeraMacro (no te confundas con Hoja1.MiPrimeraMacro


que es la que hicimos primero).

Presiona Aceptar y vers como se escribe nuevamente el valor 1500 en la


celda A1.

Nuestro objetivo fue grabar una macro que escribiera el valor 1500 en la celda
A1 de la Hoja1 de Excel. Los pasos que seguimos para utilizar la grabadora de
macros fueron:

1. Creamos un nuevo libro Excel y lo guardamos con el nombre Libro1.

2. Desde la Pestaa Desarrollador > Seccin cdigo, seleccionamos la opcin


Grabar macro y la macro comenz a grabar.

3. En la celda A1 del Libro 1 escribimos el valor 1500.

4. Detuvimos la grabacin desde la Pestaa Desarrollador > Seccin Cdigo >


Detener grabacin.

5. Borramos la celda A1 (qued con el valor 1500 cuando grabamos la macro).

6. Ejecutamos la macro desde la Pestaa Desarrollador > Seccin Cdigo >


Macros. Seleccionamos de la lista MiPrimeraMacro y luego Aceptar.

7. El resultado es que en la celda A1 se vuelve a escribir el valor 1500, que fue


justamente lo que grabamos con la macro.

Recuerda: al utilizar la grabadora no accedemos en ningn momento al editor


de macros ni tenemos que escribir cdigo. Todo lo hace automticamente la
grabadora.
Esto es todo para este post, nos vemos en el prximo articulo.

Programar en Excel - Macros Escrita vs Grabada.


Que tal te pareci los ltimos dos temas? ya lograste ver el tema anterior? Si no lo has
visto te invito a que veas pulsando Clic aqu. Una vez que termines vuelve a este tema y
continua.

Hoy vamos a conocer la diferencia que existe entre las macros escritas y las grabadas. Te
invito a que te concentres y leas todo este tema sin interrupciones:

Programar en Excel Macros Escritas vs. Grabadas

Llegados a este punto, interesa ver las diferencias entre las macros escritas manualmente
y las grabadas automticamente.

Qu fue lo que hicimos hasta aqu? Hicimos una macro que escribi el valor 1500 en la
celda A1 de la Hoja1 de Excel. Pero recuerda que hicimos esta macro 2 veces:

A. la primera vez la escribimos manualmente.

B. la segunda vez la grabamos directamente con la grabadora de macros.

Denominemos Macros Escritas a la primera y Macros Grabada a la segunda para


diferenciarlas. Aunque al ejecutarlas el resultado final fue el mismo, hay algunas
diferencias que debemos estudiar.

A continuacin veamos una tabla comparativa de ambos mtodos utilizados para crear la
macro que nos permitir revisar el proceso y obtener unas valiosas conclusiones. Las
diferencias son analizadas a continuacin:

Macros Escritas
1. Como la hicimos
1.1 Creamos un Libro Excel llamado Libro1.
1.2 Abrimos el editor de macros con ALT+F11.
1.3 En VBAProject (Libro1) hicimos doble clic

en Hoja1 (Hoja1)
1.4 Escribimos el cdigo de la macro.

2. El cdigo de la macro
2.1 Con ALT+F11 accedemos al editor demacros.
2.2 El cdigo que escribimos manualmente fue
el siguiente:
Esta macro escribe el valor 1500 en la celda A1

Sub MiPrimeraMacro()

Range(A1).Value=1500

End Sub

Recuerda que este cdigo qued en

VBAProject (Libro1) > Hoja1 (Hoja1)

3. Ejecucin de la macro
Posicionados sobre cualquier lnea del cdigo
anterior presionamos F5. Luego con ALT+F11

volvimos a la hoja de Excel y comprobamos


que en la celda A1 de la Hoja1 se escribi el
valor 1500.

Macros Grabadas
1. Como la hicimos

1.1 Utilizamos el mismo Libro1.xls


1.2 Encendimos la grabadora de macros
desde el men Herramientas > Macro >
Grabar nueva macro
1.3 Nos posicionamos en la celda A1 de la
Hoja1 y escribimos el valor 1500.
1.4 Detuvimos la grabacin de la macro desel men Herramientas > Macro >
Detener
grabacin.

2. El cdigo de la macro

2.1 Con ALT+F11 accedemos al editor de


macros.
2.2 El cdigo que se grab automticamentefue el siguiente:
Sub MiPrimeraMacro()

MiPrimeraMacro Macro
Esta macro escribe el valor 1500 en la celda A1

Range(A1).Select
ActiveCell.FormulaR1C1 = 1500
Range(A2).Select
End Sub

Recuerda que este cdigo qued en


VBAProject (Libro1) > Mdulo1

3. Ejecucin de la macro

Para no confundirnos primero borramos el valor


1500 de la celda A1, Hoja1 (lo habamos
escrito para grabar la macro). Luego
ejecutamos la macro desde el men
Herramientas > Macro > Macros.
Seleccionamos de la lista MiPrimeraMacro y
luego Aceptar. De esta forma se volvi a
escribir el valor 1500 en la celda A1 de la Hoja1.

En el tema siguiente continuamos, en este tema vamos a analizar la diferencia que existe
realmente entre estos dos mtodos.
Programar en Excel - Macros Escrita vs Grabada.
Que tal te pareci los ltimos dos temas? ya lograste ver el tema anterior? Si no lo has
visto te invito a que veas pulsando Clic aqu. Una vez que termines vuelve a este tema y
continua.

Hoy vamos a conocer la diferencia que existe entre las macros escritas y las grabadas. Te
invito a que te concentres y leas todo este tema sin interrupciones:

Programar en Excel Macros Escritas vs. Grabadas

Llegados a este punto, interesa ver las diferencias entre las macros escritas manualmente
y las grabadas automticamente.

Qu fue lo que hicimos hasta aqu? Hicimos una macro que escribi el valor 1500 en la
celda A1 de la Hoja1 de Excel. Pero recuerda que hicimos esta macro 2 veces:

A. la primera vez la escribimos manualmente.

B. la segunda vez la grabamos directamente con la grabadora de macros.

Denominemos Macros Escritas a la primera y Macros Grabada a la segunda para


diferenciarlas. Aunque al ejecutarlas el resultado final fue el mismo, hay algunas
diferencias que debemos estudiar.

A continuacin veamos una tabla comparativa de ambos mtodos utilizados para crear la
macro que nos permitir revisar el proceso y obtener unas valiosas conclusiones. Las
diferencias son analizadas a continuacin:

Macros Escritas
1. Como la hicimos
1.1 Creamos un Libro Excel llamado Libro1.
1.2 Abrimos el editor de macros con ALT+F11.
1.3 En VBAProject (Libro1) hicimos doble clic

en Hoja1 (Hoja1)
1.4 Escribimos el cdigo de la macro.

2. El cdigo de la macro
2.1 Con ALT+F11 accedemos al editor demacros.
2.2 El cdigo que escribimos manualmente fue
el siguiente:
Esta macro escribe el valor 1500 en la celda A1

Sub MiPrimeraMacro()

Range(A1).Value=1500

End Sub

Recuerda que este cdigo qued en

VBAProject (Libro1) > Hoja1 (Hoja1)

3. Ejecucin de la macro
Posicionados sobre cualquier lnea del cdigo
anterior presionamos F5. Luego con ALT+F11

volvimos a la hoja de Excel y comprobamos


que en la celda A1 de la Hoja1 se escribi el
valor 1500.

Macros Grabadas
1. Como la hicimos

1.1 Utilizamos el mismo Libro1.xls


1.2 Encendimos la grabadora de macros
desde el men Herramientas > Macro >
Grabar nueva macro
1.3 Nos posicionamos en la celda A1 de la
Hoja1 y escribimos el valor 1500.
1.4 Detuvimos la grabacin de la macro desel men Herramientas > Macro >
Detener
grabacin.

2. El cdigo de la macro

2.1 Con ALT+F11 accedemos al editor de


macros.
2.2 El cdigo que se grab automticamentefue el siguiente:
Sub MiPrimeraMacro()

MiPrimeraMacro Macro
Esta macro escribe el valor 1500 en la celda A1

Range(A1).Select
ActiveCell.FormulaR1C1 = 1500
Range(A2).Select
End Sub

Recuerda que este cdigo qued en


VBAProject (Libro1) > Mdulo1

3. Ejecucin de la macro

Para no confundirnos primero borramos el valor


1500 de la celda A1, Hoja1 (lo habamos
escrito para grabar la macro). Luego
ejecutamos la macro desde el men
Herramientas > Macro > Macros.
Seleccionamos de la lista MiPrimeraMacro y
luego Aceptar. De esta forma se volvi a
escribir el valor 1500 en la celda A1 de la Hoja1.

En el tema siguiente continuamos, en este tema vamos a analizar la diferencia que existe
realmente entre estos dos mtodos.

You might also like