Cómo crear una Macro en Excel

1134

Las macros son pequeños programas que se ejecutan en Excel y que nos permiten automatizar tareas que son repetitivas. Las macros quizás sean una de las herramientas más poderosas con las que cuenta Excel, pero es algo que el usuario normal no suele utilizar demasiado.

Creando tus propias macros te puedes ahorrar muchas horas de trabajo y mejorar tu productividad.

En esta entrada trataremos de aprender cómo se crea una macro en Excel y veremos un ejemplo muy sencillo.

¿Qué es una macro?

Una macro es un código escrito en VBA que nos permite crear una secuencia de órdenes que posteriormente serán ejecutadas para llevar a cabo una o varias tareas. Generalmente se usan para automatizar procesos rutinarios y que, si en lugar de hacer una macro, lo hiciéramos a mano nos llevaría demasiado tiempo.

El código se ejecuta de modo secuencial, es decir, va en orden, primero se ejecuta la tarea de la primera línea, después la segunda, etc.

Excel nos permite crear macros de dos maneras. La primer es grabándolas y la segunda es introduciendo el código a mano.

Pasos previos para poder crear tu primera macro

Para escribir o grabar tu primera macro vamos a crear un acceso directo al Programador ya que esta opción no sale en las pestañas y aparece oculta por defecto.

Para ellos no dirigiremos a Archivos >> Opciones >> Personalizar cinta de opciones

Buscamos la opción Programador, la activamos y aceptamos. Una vez hecho esto, en nuestro Excel aparecerá una nueva pestaña que pondrá Programador.Activar programador Excel

Pestaña programador macros excel

Habilitar macros

De manera predeterminada Excel tiene esta opción desactivada para protegernos de códigos de macros maliciosos o perjudiciales que se ejecutan automáticamente en los archivos de Excel que hayamos descargado de fuentes poco seguras.

Para activar esta opción, tendremos que ir a Archivo >> Opciones >> Centro de confianza

Ahí pulsamos sobre el botón que pone Configuración del centro de confianza. Una vez dentro seleccionamos del menú de la izquierda la opción de Configuración de macros y seleccionamos una opción de las que salen.

activar macros en excel

Recomiendo marcar la segunda opción: Deshabilitar todas las macros con notificación. De esta manera, por defecto al abrir un archivo no se ejecuta la macro directamente sino que aparecerá un mensaje en Excel que nos permite habilitar o no la macro que vaya en ese archivo.

advertencia macros excel

Con esto ya podremos empezar a crear nuestras propias macros en Excel.

Opciones para crear macros en Excel

Como hemos dicho anteriormente hay dos formas de crear una macro. La primera y más sencilla es grabándola. Con esto, Excel grabará todo lo que hagamos en el libro que tengamos abierto y traducirá todo eso a código.

Vamos a ver como se hace.

1. Grabar una macro

Para grabar una macro vamos a la pestaña de programador y pulsamos sobre la opción grabar macro.

grabar macro

Al hacerlo nos aparecerá una ventana en la cual tendremos que darle un nombre a la macro que vayamos a crear.

nombre marcro

También podemos crear un atajo de teclado para activarla rápidamente una vez esté creada. Las otras opciones que aparecen nos permiten establecer donde guardar la macro y si queremos podemos añadirle una descripción.

Una vez aceptemos se empezará la grabación de la macro. La primera macro que grabaremos lo único que hará será seleccionar toda la columna A. Es decir, una vez empiece a grabar, pulsaremos cobre la columna A como si la seleccionáramos entera y posteriormente pulsaremos sobre el botón de stop para pausar la grabación.

detener macro

Con esto ya tendríamos nuestra primera macro. Ahora vamos a ver como ejecutarla para que automáticamente seleccione la columna A.

Para ver las macros que tenemos creadas pulsamos sobre la opción Macros.

ver macros

Lo siguiente que aparecerá será una ventana con todas las macros que hayamos creado, seleccionamos la que queremos lanzar y pulsamos sobre el botón Ejecutar.

ejecutar macros en excel

Si todo ha ido bien veremos como automáticamente, sin hacer nada, se selecciona toda la columna A.

2. Introducir el código de la macro a mano

Bueno, una vez grabada nuestra primera macro vamos a ver qué es lo que hay detrás. Para ello pulsamos sobre la opción Visual Basic.

visual basic excel

Lo que veremos será una pantalla que se llama proyecto y en él veremos el libro que tenemos abierto actualmente.

proyecto excel

Veremos las hojas que tenemos y también veremos algo que se llama Módulo1. Hacemos doble clic sobre Módulo1.

codigo primera macro excel

Es aquí donde se encuentra el código de nuestra primera macro en Excel.

La estructura de una macro

Las macros siguen esta estructura

Sub NombreMacro()

End Sub

Entre estas dos líneas irá el código que determina las tareas a realizar por una macro. En nuestro caso, ese código sería:

Columns(“A:A”).Select

Ese código indica a Excel que debe seleccionar toda la columna A. El texto que aparece en verde como:

‘Macro1 Macro

Son comentarios. Nos sirven para ir poniendo notas sobre lo que vamos haciendo. Para poner un comentario en una macro simplemente usa ‘ antes de un texto en cada línea.

Pues bien es aquí donde aparece la segunda manera de crear una macro. En vez de grabarla, podemos ir directamente al editor de Visual Basic, tal como hemos hecho para ver el código de la macro grabada.

Crear un Módulo

Para crear un Módulo, lo único que tendremos que hacer será ponernos encima de donde sale el nombre del proyecto, en este caso, VBAproject (libro1), pulsar con el botón derecho y elegir la opción Insertar >> Insertar Módulo

De esta manera se crea el Módulo1 que vimos anteriormente y éste aparecerá en blanco. En él podremos empezar a introducir código para crear macros en Excel con la misma estructura que hemos visto.

Para aprender a crear Macros en Excel existen multitud de manuales por internet, y con una simple consulta en Google podrás encontrar bastantes recursos. Otra opción para ir aprendiendo es ir grabando tus propias macros y luego ver como funcionan internamente. A través de un buscador también podrás consultar macros creadas por otras personas y que ponen a disposición de todo el mundo en internet.

Aquí, en posts posteriores iremos poniendo ejemplos sencillos de macros explicando para qué sirve cada línea de código.