Está en la página 1de 12

I.E.S.E.

, MACROS EN EXCEL 2020

¿Qué es una macro de Excel?


Si utilizas Excel frecuentemente es posible que en alguna ocasión te hayas encontrado
ejecutando una misma serie de acciones una y otra vez. Esas acciones que haces repetidas
veces se podrían automatizar con una macro.

Una macro es un conjunto de comandos que se almacena en un lugar especial de Excel


de manera que están siempre disponibles cuando los necesites ejecutar.

Por ejemplo, si todas las mañanas creas un reporte de ventas y en ese reporte siempre
das el mismo formato a los textos, se podría crear una macro para que lo haga
automáticamente por ti. Las macros se utilizan principalmente para eliminar la necesidad
de repetir los pasos de aquellas tareas que realizas una y otra vez.

Un lenguaje de programación
Las macros se escriben en un lenguaje de computadora especial que es conocido como
Visual Basic for Applications (VBA). Este lenguaje permite acceder a prácticamente todas
las funcionalidades de Excel y con ello también ampliar la funcionalidad del programa.

Pero no te preocupes si no eres un programador de computadoras, Excel provee de una


herramienta especial que permite crear una macro sin necesidad de conocer los detalles
del lenguaje de programación.
I.E.S.E., MACROS EN EXCEL 2020

Aunque si aceptas el desafío y te introduces en el mundo de la programación VBA pronto


te convertirás en un Ninja de Excel. Verás que crear una macro en Excel no es tan
complicado y será una manera fácil y rápida de eliminar esas tareas repetitivas que todos
los días te quitan minutos preciados de tu tiempo.

Para qué sirve una macro en


Excel
¿Para qué sirve una macro en Excel? Una macro nos ayuda a automatizar aquellas
tareas que hacemos repetidamente. Una macro es una serie de instrucciones que son
guardadas dentro de un archivo de Excel para poder ser ejecutadas cuando lo
necesitemos.

Automatización de tareas
Seguramente estás familiarizado con procesos de automatización en el ámbito industrial.
Un ejemplo muy claro son las plantas ensambladoras de automóviles donde existen robots
que han sustituido tareas que antes eran hechas por humanos. La automatización trajo
beneficios como mayor eficiencia y productividad de las plantas y un mejor
aprovechamiento del tiempo del personal al reducir la cantidad de tareas repetitivas que
realizaban.

De la misma manera las macros nos ayudan a eliminar esas tareas repetitivas de nuestro
trabajo cotidiano al permitirnos utilizar mejor nuestro tiempo en el análisis de los datos y
en la toma de decisiones.
I.E.S.E., MACROS EN EXCEL 2020
¿Cómo se ve una macro en Excel?
Las macros son escritas en un lenguaje de computadora conocido como VBA por sus siglas
en inglés (Visual Basic for Applications). Como cualquier otro lenguaje de computadora
debemos aprender a utilizar los comandos que nos ayudarán a indicar a Excel lo que
deseamos hacer con nuestros datos.

Aprender el lenguaje VBA no es nada complicado y se puede lograr fácilmente. Lo que


toma un poco más de tiempo es pulir nuestras habilidades de programación. Lo que quiero
decir con esto es que para ser un buen programador de macros debes dedicar tiempo en
resolver múltiples problemas en donde puedas llevar al límite el lenguaje VBA.

Creación de una macro


Las macros se crean con el Editor de Visual Basic el cual nos permitirá introducir el código
con las instrucciones que serán ejecutadas por la macro.

Existe otro método que es utilizar la Grabadora de macros la cual irá grabando todas las
acciones que realicemos en Excel hasta que detengamos la grabación. Una vez grabada
la macro podremos “reproducir” de nuevo las acciones con tan solo un clic.

Ahora que ya sabes para qué sirve una macro en Excel puedes dar los primeros pasos
en este camino utilizando el tutorial Introducción a las macros.
I.E.S.E., MACROS EN EXCEL 2020

El Editor de Visual Basic


El Editor de Visual Basic, VBE por sus siglas en inglés, es un programa independiente a
Excel pero fuertemente relacionado a él porque es el programa que nos permite escribir
código VBA que estará asociado a las macros.

Existen al menos dos alternativas para abrir este editor, la primera de ellas es a través del
botón Visual Basicde la ficha Programador.

El segundo método para abrir este programa es, en mi opinión, el más sencillo y rápido y
que es a través del atajo de teclado: ALT + F11. El Editor de Visual Basic contiene varias
ventanas y barras de herramientas.

En la parte izquierda se muestra el Explorador de proyectos el cual muestra el proyecto


VBA creado para el libro actual y además muestra las hojas pertenecientes a ese libro de
Excel. Si por alguna razón no puedes visualizar este módulo puedes habilitarlo en la opción
de menú Ver y seleccionando la opción Explorador de proyectos.
I.E.S.E., MACROS EN EXCEL 2020

El Explorador de proyectos también nos ayuda a crear o abrir módulos de código que se
serán de gran utilidad para reutilizar todas las funciones de código VBA que vayamos
escribiendo.

Dentro del Editor de Visual Basic puedes observar una ventana llamada Inmediato que
está en la parte inferior. Esta ventana es de mucha ayuda al momento de escribir código
VBA porque permite introducir instrucciones y observar el resultado inmediato. Además,
desde el código VBA podemos imprimir mensajes hacia la ventana Inmediato con el
comando Debug.Print de manera que podamos depurar nuestro código. Si no puedes
observar esta ventana puedes mostrarla también desde el menú Ver.

El área más grande en blanco es donde escribiremos el código VBA. Es en esa ventana en
donde escribimos y editamos las instrucciones VBA que dan forma a nuestras macros.

Es importante familiarizarnos con el Editor de Visual Basic antes de iniciar con la creación
de macros.
I.E.S.E., MACROS EN EXCEL 2020

Tu primera macro con VBA


Ahora que ya sabes lo que es el Editor de Visual Basic para Aplicaciones podemos hacer
un ejemplo muy sencillo para crear una macro. Lo primero que debes hacer es ir a la ficha
Programador y hacer clic en el botón Visual Basic.

Creación de un módulo
Una vez dentro del Editor debes hacer clic derecho sobre el título del proyecto y dentro del
menú seleccionar la opción Insertar y posteriormente Módulo.

Se creará la sección Módulos y dentro de la misma se mostrará el módulo recién creado.


Puedes saber que el módulo está abierto porque su nombre se muestra en el título entre
corchetes.
I.E.S.E., MACROS EN EXCEL 2020

Si el módulo no está abierto solamente deberás hacer doble clic sobre él. Posiciónate en
el área de código e introduce las siguientes instrucciones:

Antes de avanzar explicaré con detalle las instrucciones mostradas.

Subrutinas en VBA
El primer concepto que explicare es la instrucción Sub que es la abreviación de la
palabra subrutina. Una subrutina no es más que un conjunto de instrucciones que se
ejecutarán una por una hasta llegar al final de la subrutina que está especificado por la
instrucción End Sub.

Las subrutinas nos ayudan a agrupar varias instrucciones de manera que podamos
organizar adecuadamente nuestro código. Una subrutina siempre tiene un nombre el cual
debe ser especificado justo después de la instrucción Sub y seguido por paréntesis.
I.E.S.E., MACROS EN EXCEL 2020
La función MsgBox en VBA
La subrutina que acabamos de crear para este ejemplo solamente tiene una instrucción
dentro la cual hace uso de la función MsgBox. Esta función nos ayuda a mostrar una
ventana de mensaje de manera que podamos estar comunicados con el usuario sobre
cualquier error o advertencia que necesitamos darle a conocer. Para este ejemplo he
utilizado la forma más sencilla de la función MsgBox la cual solamente tiene un solo
argumento que es precisamente el mensaje que necesitamos mostrar en pantalla al
usuario.

Ejecutar macro
Para probar nuestro código bastará con pulsar el botón Ejecutar que se encuentra dentro
de la barra de herramientas.

En cuanto se pulsa el botón se ejecutará el código recién ingresado y obtendremos el


resultado en pantalla.

Listo, has creado tu primera macro la cual muestra una ventana de mensajes y despliega
el texto especificado en la función MsgBox. Para guardar la macro recuerda que debes
guardar el archivo como Libro de Excel habilitado para macros, de lo contrario perderás
el código del módulo creado.
I.E.S.E., MACROS EN EXCEL 2020

Utilizar comentarios en VBA


Utilizar comentarios dentro del código VBA es una de las mejores prácticas que debes
adoptar desde que inicias en el mundo de la programación en Excel. Los comentarios harán
que tu código sea fácil de entender.

Un comentario en VBA es una línea dentro del código que no será tomada en cuenta al
momento de realizar la ejecución. Los comentarios serán solo visibles por ti al momento de
editar el código dentro del Editor de Visual Basic.

Para agregar un comentario será suficiente con colocar una comilla sencilla (‘) al inicio de
la línea. Después de colocar la comilla sencilla debes escribir el comentario y al terminar
de insertar la línea Excel colocará automáticamente el texto en color verde indicando que
ha reconocido la línea como un comentario en VBA.

He visto en más de una ocasión que muchas personas no tienen esta buena práctica al
programar en VBA y el problema se presentará cuando pase el tiempo y tengan que
modificar el código pero ya no recuerden la lógica implementada ni lo que significa cada
una de las variables.

Aunque pareciera una actividad aburrida, créeme que te ahorrará mucho tiempo cuando te
veas en la necesidad de modificar tu código. Además, si por alguna razón necesitas que
otra persona haga modificaciones al código le serán de gran ayuda los comentarios que
hayas agregado.

Comentar varías líneas de código


I.E.S.E., MACROS EN EXCEL 2020
Como ya lo mencioné, un comentario en VBA será omitido al momento de la ejecución.
En ocasiones cuando está haciendo pruebas con tu código VBA deseas evitar que ciertas
líneas de código se ejecuten y una manera de hacer es comentando dichas líneas.

Para comentar varias líneas de código en una macro, sin la necesidad de estar colocando
la comilla sencilla al principio de cada una de las líneas, puedes seguir los siguientes pasos.
En primer lugar selecciona todas las líneas de código que deseas convertir en comentarios
y posteriormente oprime el botón Bloque con comentarios de manera que Excel coloque
todas las comillas sencillas (‘) a cada línea de código seleccionada.

De la misma manera puedes remover las comillas sencillas si pulsas el botón Bloque sin
comentarios que se encuentra justo al lado derecho del botón Bloque con comentarios.

Si no puedes ver los botones anteriores en el Editor de Visual Basic es porque seguramente
tienes oculta la barra de herramientas de Edición. Para mostrarla, haz clic derecho sobre
un área libre del menú superior y seleccionar la opción Edición.
I.E.S.E., MACROS EN EXCEL 2020

Objetos, propiedades y métodos


Los objetos en Excel (VBA) son cosas. Una celda es un objeto, una hoja es un objeto, un
libro es un objeto y de esta manera existen muchos más objetos en Excel. A esto lo
conocemos como el modelo de objetos de Excel.

Cada uno de los objetos de Excel tiene propiedades y métodos. Las propiedades son las
características del objeto y los métodos son las acciones que el objeto puede hacer.

Propiedades de un objeto
Si una persona fuera un objeto de Excel sus propiedades serían el color de sus ojos, el
color de su cabello, su estatura, su peso. De la misma manera, un objeto de Excel tiene
propiedades por ejemplos, una celda (Range) tiene las propiedades valor (Value) y
dirección (Address) entre muchas otras. Estas propiedades describen mejor al objeto.

Métodos de un objeto
I.E.S.E., MACROS EN EXCEL 2020
Siguiendo con el ejemplo de una persona, si fuera un objeto de Excel sus métodos serían
correr, caminar, hablar, dormir. Los métodos son las actividades o acciones que el objeto
puede realizar. Los objetos de Excel se comportan de la misma manera que el ejemplo de
una persona. Una celda (Range) tiene los métodos activar (Activate), calcular (Calculate),
borrar (Clear) entre muchos más.

Utilizando las propiedades y los métodos


Para acceder a las propiedades y métodos de un objeto lo hacemos a través de una
nomenclatura especial. Justo después del nombre del objeto colocamos un punto seguido
del nombre de la propiedad o del método. Observa este ejemplo donde hacemos uso de la
propiedad Value para la celda A1:

Range("A1").Value = "Hola"

De esta manera asignamos una cadena de texto al valor de la celda A1. Ahora bien, si
queremos borrar ese valor que acabamos de colocar en la celda podemos utilizar el
método Clear de la siguiente manera:

Range("A1").Clear

Ver todas las propiedades y métodos


Los objetos tienen muchas propiedades y métodos y a veces es difícil pensar que los
llegaremos a memorizar todos por completo. Sin embargo, el Editor de Visual Basic es
de gran ayuda porque justamente al momento de escribir nuestro código nos proporciona
la lista completa de propiedades y métodos para un objeto.

Esto sucede al momento de introducir el punto después del nombre del objeto. Puedes
distinguir entre las propiedades y métodos porque tienen iconos diferentes. En la imagen
de arriba los métodos son los que tienen el icono de color verde.

Recuerda, los objetos son cosas en Excel y sus características las


llamamos propiedades las cuales nos ayudan a definir al objeto. Los métodos son las
acciones que cada objeto puede realizar.

También podría gustarte