Programar macros en excel, se que la mayoría de los usuarios ven muy lejos esta posibilidad, principalmente cuando ven el código de alguna macro, no solo esta en ingles, sino que ademas parece no tener sentido.
Pues ahora te enseñare como puedes diseñar tus propias macros incluso si no tienes idea de lo que es programar, es decir, podrás generar una macro que facilitara tu trabajo de una manera exponencial y no sera necesario que tu directamente escribas una linea de código.
Video: como Programar Macros en Excel
Quizá esto te parezca extraño, como podría alguien programar una macro en excel sin escribir el código de la misma, en realidad es bastante sencillo, esto porque excel nos permite programar macros usando una grabadora de macros, esa opción viene ya integrada en excel, así que no tendrás que hacer nada especial para lograrlo.
Donde esta la Grabadora de Macros.
La opción para programar macros mediante el uso de la grabadora esta en la ficha “DESARROLLADOR” de excel.
Pero la ficha desarrollador no esta activada normalmente, así que es muy probable que tu no la veas en la parte superior de tu excel, donde esta “INICIO, INSERTAR, DISEÑO DE PAGINA…”, así que sera necesario activar esa opción.
Activar la ficha desarrollador de excel
- Abrir Excel
- Click en archivo / Opciones/ Personalizar cinta de opciones
- En la sección derecha de la ventana siguiente, activa la casilla de verificación de la opción “Desarrollador”
- Click en aceptar.
Ahora ya podrás ver la ficha Desarrollador.
Como Crear macros en Excel usando la grabadora.
Al usar la grabadora para programar macros excel, básicamente se esta generando código por cada acción que realizas una vez que presionas el botón de grabar maco, es decir, enciendes la grabadora y luego haces el procedimiento que normalmente realizas para determinada tarea en excel, una vez que terminas el proceso simplemente detienes la grabación dando click en detener grabación.
Aquí hay algo muy importante a destacar, para lograr que las macros generadas sean lo mas eficientes posible, es de suma relevancia que prepares muy bien el procedimiento a realizar durante la grabación, eso significa que tal vez haya cosas que puedas mejorar en tu proceso.
Un ejemplo claro de esto es el proceso de copiar y pegar, en la mayoría de los casos se usa el ratón para seleccionar un rango determinado, la grabadora de macros detectara ese rango seleccionado y así lo guardara, pero es posible que ese rango no sea siempre igual, en esos casos la macro resultante no cumpliría con lo que realmente se requiere.
El caso de copiar y pegar se puede resolver usando una combinación de teclas para seleccionar, por ejemplo, seleccionar la primera celda del rango que se va a seleccionar, presionar CONTROL – SHIFT – FLECHA DERECHA y CONTROL – SHIFT – FLECHA ABAJO.
Lo descrito en el párrafo anterior hace que la macro selecciona hasta el ultimo dato a la derecha y luego hasta el ultimo dato hacia abajo, de ese modo se logra seleccionar toda la información siempre, esto si no hay celdas vacías en tanto en la primera fila como en la primera columna.
Una vez que tenemos claro el procedimiento que debemos seguir para la tarea que deseamos programar, ya estamos listos para iniciar.
Para esto veremos un ejemplo donde la idea es almacenar los datos de registro diarios dentro de una hoja concentradora, es decir, tenemos una hoja donde se registra la información del día, al cerrar el día se debe pasar esta información a otra hoja donde se va almacenando el registro de todos los días, seria nuestra base de datos general.
En esta imagen se puede observar la hoja de registro diario, lo que queremos es pasar esos registros a la hoja concentradora.
- Antes de iniciar, es importante seleccionar una celda que no sea la primera que se usara al realizar la tarea a programar, incluso es bueno seleccionar una hoja diferente a la que se usara primero para tal operación.
- Dar click en la ficha PROGRAMADOR
- Click en Grabar Macro
- Poner un nombre a la macro
- Aceptar.
- Seleccionar la hoja donde están los datos.
- Click en la primera celda de los datos a copiar
- Presionar CONTROL – SHIFT – FLECHA DERECHA para seleccionar todo el rango hacia la derecha, esto también se puede hacer de la manera tradicional con el ratón, esto en caso de que sea posible que puedan existir celdas vacías en esa primera fila.
- Una vez que la primera fila con datos se ha seleccionado, debemos seleccionar hacia abajo hasta el ultimo registro, esto se hace con CONTROL – SHIFT – FLECHA ABAJO, es importante hacerlo de esta manera para los casos donde los datos a copiar ocupan rangos dinámicos, así no aseguramos de que siempre se seleccionara todo el rango aunque no siempre sea igual.
- Control c para copiar
- Seleccionar la hoja donde se pegaran los datos
- Seleccionar la primera celda donde se pegaran los datos
- Click derecho en esa primera celda
- Click en insertar los datos copiados.
- Click en la opción desplazar las celdas hacia abajo ( esto es para que cuando haya datos ya registrados, estos se desplacen hacia abajo y no se borren ).
- Aceptar.
- Click en la celda A1
- Seleccionar la hoja de donde se copiaron los datos
- Presionar ESC para desactivar el modo copiar.
- Presionar la tecla suprimir, si se desea eliminar la información que ya se respaldo.
- Seleccionar la celda A1.
- Click en detener grabación en la ficha Desarrollador.
Ver el código de la macro que se ha generado.
Con el procedimiento anterior se ha generado un código VBA de esa macro, puedes verlo presionando ALT – F11
En la sección de la derecha de esa ventana se puede ver el código generado, esto también te puede ayudar para aprender a escribir código tu mismo.
Como ligar esa macro a un botón para ejecutarla.
Puedes ligar esa macro a un botón, de ese modo podrás ejecutarla en cualquier momento dando click en ese botón.
- En la ficha desarrollador da click en insertar
- Seleccionar el primer botón dando click en el
- en la hoja de calculo da click para pegar el botón, puedes cambiar su tamaño y texto
- te saldrá una ventana donde podrás seleccionar la macro a la que quieres ligar el botón
De este modo cada vez que des click en ese botón se ejecutara la macro que generaste.
Como puedes observar, programar macros en excel es sumamente sencillo, el trabajo realmente lo haces una vez al grabar la macro, después haces todo ese trabajo simplemente dando click en un botón.
Espero que este ejemplo te sea de gran ayuda.
Fredy R dice
Excelente Aporte. Muy didáctico!!! Muchas gracias
danilo efren dice
Excelente ejercicio.
Gracias por compartirlo
Sirviera de mucho en los proyectos a futuro.
Saludos.Danilo
Patricio dice
Hola
Por favor podrías hacer un tutorial para hacer macros con códigos.
Gracias
Nolberto Lopez dice
Saludos Patricio.
En la categoria de macros tengo varios jemplos.
https://formulasexcel.com/category/macros/