Introducción a las macros

Muchos de vosotros me habéis pedido alguna vez que os enseñe a hacer macros. Otros no queréis macros en vuestros archivos Excel porque no veis que hacen y “no las podéis controlar”. En ésta serie de artículos intentaré que aprendáis a dominar las macros y os sentáis a gusto con ellas.
Hay diversas razones para decidirnos por las macros. Una tarea repetitiva en el tiempo, una tarea puntual pero con un alto grado de repeticiones o una tarea en la que sea necesaria la aparición de una macro para poderla hacer.
Para aprender a hacer macros lo que normalmente se hace es grabar una serie de acciones. Esto lo hacemos mediante el menú Herramientas > Macros > Grabar nueva Macro… Esto nos da una base de trabajo, pero no siempre es suficiente. La mayoría de veces deberemos pasar por el editor de VBA [botón] (Alt + F11). Una macro es una rutina de código de Visual Basic for Applications (es un Visual Basic adaptado para Office), debido a esto cuando modificamos una macro lo hacemos en Visual Basic.
La ventana de edición es ésta:


Aquí podéis ver el código que se ha escrito al grabar la macro. A la izquierda se muestran los proyectos (libros Excel) y a la derecha hay el código que puede estar en los módulos de código, formularios, hojas o el libro mismo.
Si observáis detenidamente el código generado veréis que es bastante sencillo de entender. Aún así hay dos problemas que aparecen frecuentemente. Al grabar una macro, nuestras equivocaciones y todas las órdenes intermedias que hacemos con el cursos (como desplazar la página) también quedan grabadas y obtenemos un exceso de código inútil. Esto hace que el código “sucio” parezca confuso y se ejecute más lentamente. El otro problema es que veremos que hay acciones que no quedan grabadas i entonces tendremos que escribir el código nosotros mismos.
En resumen, casi siempre tendremos que pasar por el editor de VBA para tener unas macros potentes, flexibles y bien escritas; lo ideal es que se puedan reutilizar y sean comprensibles.

Deja un comentario

Publicar un comentario

Gracias por dejar tu comentario.