¿QUÉ ES UNA MACRO EN EXCEL?

Casi todo el mundo tiene una pequeña noción de qué es una macro, pero casi nadie
que no se haya iniciado un poco en Excel conoce la potencialidad de VBA.

Una vez me dijo un amigo que aprendió VBA porque se negaba a volver a hacer tareas
repetitivas. Tengo que decir que no es mi caso pero que desde entonces yo también
he seguido esa filosofía.

Una macro es un pedacito de código programado en VBA, el lenguaje de
programación de Microsoft. Pues vaya, menuda definición estarás pensando. Venga,
ahí va otra pequeña descripción. Una macro en Excel es la automatización de una
tarea sencilla o compleja en Excel.

Quizás todavía no te ha quedado muy claro y como todo se entiende mejor con un
ejemplo te contaré uno.

Una macro muy típica es aquella que nos permite copiar información de una hoja a
otra de Excel a través de un botón para crear un registro (por ejemplo).

Básicamente, el pedacito de código previamente comentado puede ser cualquier
operación que puedas hacer en Excel mediante botones (normalmente) u otros
elementos. Aunque también puedes hacer que sean macros que “salten”
automáticamente. Por ejemplo, cuando seleccionas una celda o cambia un valor de
una fórmula. Cosas como cambiar formatos, eliminar columnas, añadir filas, crear
fórmulas, pegar imágenes, ordenar datos, insertar datos… cualquier cosa.

¿QUÉ ES UNA MACRO EN EXCEL?
Como te decía, una macro es una operación que automatizamos en Excel y lo
hacemos a través del editor de macros.

Este pedacito de código, en VBA siempre tiene la siguiente forma (manera de
escribirse):

es gratis. para que VBA los entienda como tales.>> cada vez que se ejecute una macro. .Entre el Sub y el End Sub es donde escribiremos nuestro código por ejemplo como en este caso: En la imagen anterior vemos dos líneas en verde. En negro está escrita una línea de código que hará saltar el mensaje <<Subscríbete a este blog. de una comilla simple. o a nosotros mismos. nos podría dar otro tipo de mensaje que fuera útil al usuario del programa Excel que hemos creado. El resultado será el siguiente: Esto. por ejemplo. son los comentarios que van precedidos. Para ejecutar la macro presionamos la tecla F5 de nuestro teclado mientras el cursor está situado en alguna línea de la macro.

UN POCO DE TEORÍA SOBRE MACROS EN EXCEL Merece la pena conocer el atributo Public/Private de una Subrutina (macro). VBA entiende que toda macro es del tipo Public con lo que ello conlleva y que te explicaré a continuación. . Normalmente añadiremos el atributo Private cuando tengamos muchas macros y no nos apoyemos en algunas para ejecutar nuestro módulo pero que no son necesarias que sean visibles. ¿QUÉ COSAS PUEDO HACER CON UNA MACRO EN EXCEL? En Excel podemos hacer macros para casi todo lo que se nos ocurra. por defecto. La mayoría de las personas crean una macro en Excel para automatizar algunas tareas sencillas (o complejas) aunque su potencia es mucho mayor. aunque. La definición de cada una de ellas sería: Public: puede accederse a ella desde otro módulo y es visible desde la ventana de Desarrollador. Me parece una decisión acertadísima porque puede ahorrarte miles de horas de trabajo como me las ha ahorrado a mi y a muchas personas. Private: es una macro que no puede llamarse desde otro módulo y tampoco desde la ventana de desarrollador. Algunos ejemplos que puedes ver en esta web son:  Copiar un rango de celdas de una hoja a otra  Copiar datos de un libro de Excel a otro  Copiar un gráfico de Excel a PowerPoint  Crear una función de Excel que no existe ¿CÓMO APRENDO A CREAR MACROS? Si has llegado hasta aquí es que estás verdaderamente interesado en aprender a crear macros en Excel. Antes de la palabra Sub de nuestra macro podemos poner la palabra Public o Private.

6. mi primer macro en excel. macro al abrir o cerrar un libro. leer una base de datos access. UTILIDAD MACRO EN EXCEL 1. Para aprender a programar macros sin saber de programación deberás:  Tener paciencia  Empezar por tareas sencillas (ya conseguirás hacer las difíciles)  Dominar Excel o. dediqué muchas horas a probar cosas que se me ocurrían. crear hojas con un clic. desde excel. desproteger una hoja de cálculo. no importa que no sepas de programación. Ahora bien. 9. 12. 15. a automatizar todas las tareas que pasaban por mis manos y a quedarme muchas horas sin dormir. 14. 11. tener un conocimiento muy bueno de la herramienta. mi primer combobox. . 16.APRENDER MACROS DE EXCEL SIN SABER PROGRAMACIÓN Antes de nada. 5. 4. sacándoles provecho a los combobox. modificar datos utilizando un formulario. mostrar y ocultar hojas. el nombre del fichero. obtener el nombre de la hoja. utilizando macros. y la hoja. he de decirte que aprender a crear tus propias macros en Excel es un poco desquiciante al principio. obtener el nombre del archivo. obtener la ruta. 3. buscar hojas ocultas. Para ello. poner la hora en una celda. mi primer userform. 2. introducir datos utilizando un formulario. al menos. lo digo por experiencia propia. 17. 7. crear carpetas (o directorios). 8. 13. 10. Yo no sabía de programación y ahora se programar macros en Excel sin dificultad.

préstamos y cálculo de hipotecas. 33. préstamos con amortización de capital constante. calcular vencimientos. 23.18. préstamos según el método americano. Paso 1: Activar la barra de herramientas Programador . calcular la tae. aprenderemos a crear paso a paso una macro simple. 19. controlar vencimientos de facturas y recibos. 27. obtener datos de una página web. 26. calcular la letra del nif/dni. 21. 32. calcular la tir y el van. simultanear filas de colores. evolución de un capital a interés simple e interés compuesto. 22. 24. validación con datos en otra hoja. validación de listas dependientes. 30. calendarios para imprimir. 25. 31. números aleatorios no repetidos. PASOS PARA LA CERACIÓN DE MICRO EN EXCEL ¿Cómo crear una macro paso a paso? En este tutorial. 28. 29. control horario: horas normales y horas extras. 20.

Paso 2: Habilitar las macros Otra opción por defecto en Excel es que las macros se deshabilitan automáticamente. En la nueva ventana que aparecerá. Por lo tanto. para empezar a crear nuestra macro es necesario activar esta barra de herramientas.La barra de herramientas necesaria para trabajar con macros está oculta en el Excel por defecto. Paso 3: Crear la macro con el grabador Una forma muy simple de crear una macro es utilizando el grabador de macros. Para ello. Utilizar el grabador es una muy buena manera de empezar . Para trabajar con macros es necesario cambiar esta opción. Esta herramienta permite que cualquier acción que nosotros realicemos en el libro de Excel sea codificada en el VBA. debemos seguir la siguiente ruta: En la pestaña Programador. La ruta a seguir para activarla es: Archivo – Opciones – Personalizar cinta de opciones y activar la casilla “Programador”. seleccionar la herramienta Seguridad de macros.

Finalmente. necesitará recordar para que sirve cada una). Una vez que damos Aceptar. En método abreviado se le da la opción de crear un atajo para ejecutar la macro (esta característica es opcional).a familiarizarnos con las macros. Luego. Con las otras dos opciones la macro se guardará en un libro específico y la podremos utilizar en cualquier computadora pero solamente para ese archivo. Por lo que más adelante. En primer lugar. Para empezar a grabar nuestra macro. se ha . también nos da la opción de agregar alguna descripción sobre la macro que vamos a crear (esto también es opcional. debemos seguir los siguientes pasos: en la pestaña “Programador”. Este libro o Libro de macros personal. pero nos limita a únicamente las acciones que se pueden realizar directamente con las herramientas visibles del Excel. Esta última opción permite guardar la macro en una “carpeta personal” a la cual podemos acceder desde cualquier libro de Excel con el que trabajemos. Le aparecerá una ventana donde deberá colocar el nombre. método abreviado. será necesario ingresar los códigos manualmente. seleccione la herramienta “Grabar macro”. pero es útil como un recordatorio de la función de la macro). póngale un nombre a la macro que pueda recordarle la utilidad de este (pues a la hora de trabajar con varias macros. Puede elegir entre Libro nuevo. descripción y ubicación de la macro. pero únicamente desde la computadora en la que la hayamos creado. le da la opción de elegir dónde guardar la macro.

empezado a grabar nuestra macro. etc. También puede editar cualquier macro ya creada o incluso crear una nueva manualmente. . se irán agregando esos códigos a este proyecto llamado Módulo1. Podrán ver que donde dieron click a “Grabar macro” ahora aparece la opción “Detener macro”. al abrir la herramienta de Visual Basic le aparecerá la ventana para editar. En la misma pestaña Programador. Conforme vaya creando más macros con el Grabador. eliminar una columna o una fila. Por ejemplo: cambiar el formato de un texto. Esta nueva macro la puede observar en el editor de Visual Basic. entre las opciones de la barra de proyectos ubicada a la izquierda. puede proceder a realizar toda la secuencia de acciones que desee que realice la macro. deberá seleccionar el proyecto Módulo1. Una vez que ya hayamos realizado todas las acciones que queremos que ejecute la macro. Paso 4: Grabar la macro Ya prendido el grabador de macros. Para ver la macro creada con el grabador. borrar contenido de una celda. debemos seleccionar la opción Detener grabación (ubicada en la pestaña Programador).

podrá ejecutar la macro de la siguiente manera. Si es que utilizamos esta opción. Dentro de la pestaña Programador. Elija la macro que desee realizar y seleccione la opción ejecutar. Al seleccionarla le aparecerá una nueva ventana con la lista de todas las macros disponibles. para ejecutarla sólo es necesario aplicar la combinación de teclas y la macro realizará automáticamente toda la secuencia de acciones que le indicamos.Paso 5: Ejecutar la macro La forma más directa de poder poner en acción la macro que hemos creado es con el método abreviado o atajo que nos permitía establecer al crear una macro con el grabador. En caso de que no haya definido un método abreviado. al lado de la herramienta Visual Basic podrá ver la opción de “Macros”. .