Las Macros en Excel son un conjuntos de instrucciones que se ejecutan de manera secuencial por medio de una orden de ejecuciуn, claro esta que una Macro puede invocar a otras, logrando de esta forma obtener operaciones cada vez mas complejas.
En el caso de Excel el lenguaje empleado para el uso de Macros es VBA (Visual Basic para Aplicaciones), Excel cuenta con un «Editor de Visual Basic” o tambien conocido como «Editor de VBA» que permite la creaciуn, y/o mantenimiento de las Macros que se tengan disponibles.
Las Macros en Excel son utiles entre otras cosas porque permiten la automatizaciуn de tareas repetitivas, por ejemplo, si se da cuenta que todos los duas se encuentra creando la misma tabla dinamica (pero con distintos datos), o colocando el mismo formato a una hoja, entonces es el momento de automatizar dicha labor por medio de Macros.
Para poder usar las macros tenemos que tenerlas habilitadas. Para ello vamos a Archivo/Mas…/Opciones y vamos a Personalizar cinta de opciones.
Marcamos la casilla Programador
Aceptamos y asi ya lo tenemos habilitado.
Como veis aparece en Programador
Y asн tenemos todas las opciones de Macros.
Veamos brevemente los botones
Virtual Basic nos abre el editor VBA para poder escribir codigo.
Macros nos muestra las macros que tenemos en nuestros libros de Excel, ahi podremos crear, eliminar, modificar, etc. nuestras macros.
Grabar macro es el botуn que utilizaremos para grabar nuestras macros.
Usar referencias relativas nos permite utilizar referencias relativas para que las macros se graben con acciones relativas a la celda inicial seleccionada. Por ejemplo, si grabamos una macro en la celda A1 que desplaza el cursor a la celda A3 con esta opciуn activada, si ejecuta la macro resultante en la celda J6 se desplazaia el cursor a la celda J8. Si la opciуn Usar referencias relativas esta desactivado si ejecutamos en la celda J6, se desplazaria el cursor a la celda A3.
Seguridad de macros personaliza la configuraciуn de seguridad de la macro.
Para guardar un libro de Excel con macros tenemos que guardarlo en formato Libro de Excel habilitado para macros.
Esa opciуn la encontramos cuando hacemos Guardar como… lo elegimos en tipo de archivo.
Ahora vamos a ver un ejemplo sencillo de como grabar una macro.
Hay que tener activada la opciуn Usar referencias relativas
Aqui tenemos la tabla que vamos a utilizar:
Vamos a grabarla.
Para ello hacemos clic en el botуn Grabar macro
Nos aparece la ventana para renombrar la macro, poner un atajo de teclado (que llamara a la macro) y donde guardarla.
Le ponemos el nombre “Ordenar_A_Z” No se pude poner espacios ni caracteres no permitidos.
Tecla de metodo de teclado abreviado pulsamos Mayusculas y O a la vez.
Las guardamos en este libro
Ahora lo que hacemos es los pasos que queremos grabar en la macro.
Hacemos clic en Inicio/Ordenar y filtrar y hacemos clic en Filtro.
Ahora vamos a la tabla y en la columna Mes hacemos clic en el desplegable y le decimos ordenar de la A a la Z.
Y paramos la grabaciуn. Con el botуn abajo a la izquierda.
Ahora vamos a Macros y vemos la macro que hemos grabado.
Como veis nos aparece la macro que acabamos de grabar.
Aqui podemos ejecutar la macro, Ver el cуdigo paso a paso como esta escrita, la podemos modificar, crear otra, eliminar y unas cuantas opciones.
Cancelamos y volvemos a nuestra tabla.
Volvemos a la columna Mes y la ordenamos de la Z ala A.
Y ejecutamos la macro tecleando simultaneamente Ctr+Mayus+O
Como veis se ordenan los meses de la A al a Z.
Vamos a ver ahora como desde un ahoja de Excel podemos ir a otra y seleccionar una fila.
Estamos en una hoja llamada hoja 9, seleccionamos la celda A1
Ahora vamos a Grabar macro.
Acordaros de tener el botуn Usar referencias relativas seleccionado.
Aparece la ventana de macros y ponemos este nombre y este atajo de teclado.
Aceptamos y realizamos los pasos.
Vamos a la hoja 8 donde tenemos los datos
Acto seguido seleccionamos la fila 2
Y hacemos clic en Detener grabaciуn, esta vez en la barra de herramientas.
Ya la tenemos ahora vamos a comprobar que funcione.
Vamos a la hoja 9
Seleccionamos la celda A1
Y pulsamos Ctr+Mayus+H
Y como veis va a la hoja 8 y selecciona la fila 2.
Bien ahora vamos a hacer algo mas util.
Vamos a crear dos botones a los cuales les asignaremos una macro a cada uno, asн al pulsarlos se ejecutaran.
Para lo siguiente vamos a esta tabla:
Vamos a grabar una macro que se llame filtro_comer
Hacemos clic en el botуn grabar macro.
Nos aparece la ventana de macros y la nombramos, pero no le indicamos atajo de teclado.
La macro va a ser seleccionar una celda de la columna comerciales y abrira el filtro:
Y le decimos que nos filtre solo a 3 comerciales en este caso Almendros, Alonso y Aludes
Detenemos la grabaciуn.
Ahora vamos a grabar la siguiente.
Hacemos clic fuera de la tabla y clic en el botуn Grabar macro
En la ventana lo nombramos asi y no ponemos tampoco atajo de teclado.
Vamos a la pestaсa Datos
Hacemos clic en filtro
Y paramos la macro.
Vanos a hacer los botones. Vamos Programador/insertar/Botуn.
Nos pregunta lo siguiente.
Le decimos que asignamos la macro “filtro_comer”
Aceptamos y lo ponemos en la primera columna le ponemos nombre.
Ahora con el botуn de la derecha lo copiamos y lo pegamos al lado.
Le cambiamos el nombre al segundo
Con el botуn de la derecha en el botуn que hemos nombrado como deshacer filtro vamos a asignar macro.
Pues ya estб, si apretamos el botуn Filtro comer nos filtra los tres comerciales solamente.
Y si hacemos clic en el botуn Deshacer Filtro, nos vuelve a la normalidad la tabla.