QUE ES UNA MACRO
¿Qué es una macro grabada en Excel?
Una macro grabada es una herramienta de Excel que permite automatizar tareas repetitivas sin necesidad de escribir código manualmente.
Excel observa lo que haces (clics, cambios de celda, formato, operaciones…) y genera automáticamente un código en VBA (Visual Basic for Applications) que replica exactamente tus acciones.
Esto permite que un usuario sin conocimientos de programación automatice procesos simplemente grabando sus pasos.
¿Para qué sirve una macro grabada?
Automatizar cálculos repetitivos
Crear formatos y plantillas rápidamente
Generar tablas y reportes de forma automática
Aplicar estilo, estructura y fórmulas con un solo clic
Estandarizar procesos dentro de la empresa
En general: una macro grabada convierte un proceso manual en uno automático.
Cómo grabar una macro en Excel (paso a paso)
Estos pasos funcionan en Excel para Windows y Mac.
1. Activar la pestaña “Programador” (Developer)
Si todavía no aparece:
Ir a Archivo
Seleccionar Opciones
Entrar a Personalizar cinta de opciones
Marcar la casilla Programador
Aceptar
2. Iniciar la grabación
Ir a la pestaña Programador
Clic en Grabar macro
Aparece una ventana con:
Nombre de la macro
Tecla rápida (opcional)
Dónde se guardará
Este libro
Libro personal de macros
Descripción (opcional)
Presionar Aceptar
A partir de ese momento, Excel empieza a registrar paso por paso lo que haces.
3. Realizar las acciones que deseas automatizar
Por ejemplo:
Escribir datos
Aplicar fórmulas
Cambiar colores
Insertar filas o columnas
Crear tablas
Mover información
Formatear celdas
Crear operaciones complejas
Cada clic cuenta como un comando que luego el VBA reproducirá automáticamente.
4. Detener la grabación
Ir a:
Programador → Detener grabación
En ese instante, la macro queda guardada.
Cómo ver el código de la macro
Una macro grabada genera código automáticamente.
Para verlo:
Ir a Programador
Clic en Visual Basic
Buscar en el panel izquierdo:
Módulos → Módulo1 (o el que aparezca)
Allí encontrarás el código en VBA.
Ejemplo típico del código grabado:
Sub FormatoAutomatico()
Range("A1").Select
Selection.Font.Bold = True
Selection.Interior.Color = RGB(255, 255, 0)
End Sub
Todo eso lo escribió Excel, no tú.
Ventajas de las macros grabadas
No necesitas saber programar
Excel construye el VBA por ti
Puedes editar el código si lo deseas
Ahorran horas de trabajo repetitivo
Son ideales para reportes y formatos empresariales
Limitaciones
Solo pueden grabar acciones, no decisiones complejas
El código generado puede ser más largo de lo necesario
No funciona bien si tus acciones dependen de datos variables
(aunque puedes editar el VBA para eso)
¿Cómo estoy aplicando la macro en la práctica para tu ejercicio?
Tu ejercicio consistía en:
✔ Crear una hoja de Excel
✔ Incluir celdas para horas trabajadas
✔ Aplicar fórmulas con SI
✔ Calcular normales, extras dobles y triples
✔ Añadir salario bruto, descuentos y salario neto
Para hacer esto mediante macro grabada, el proceso sería así:
Aplicación práctica del uso de macros grabadas
1. Yo preparo la hoja manualmente:
Escribo encabezados
Acomodo celdas
Inserto fórmulas
Organizo la estructura de cálculo
Aplico formato (negritas, bordes, ancho de columnas, etc.)
2. Inicio la grabación de la macro
Mientras la macro está grabando hago lo siguiente:
Escribo las etiquetas (Horas trabajadas, Valor Hora, Horas Extras…)
Inserto las fórmulas en sus celdas:
=A2-40
=SI(C2<=8, C2, 8)
=SI(C2>8, C2-8, 0)
etc.
Ajusto la tabla
Aplico formato
Todo eso Excel lo convierte automáticamente en código.
3. Detengo la grabación
Ahora la hoja ya puede reconstruirse automáticamente cada vez que ejecutes la macro.
4. La macro generada tendría un código similar a:
(Esto es un ejemplo del estilo de código que Excel genera automáticamente cuando grabas una macro)
Sub CrearTablaHorasExtras()
Range("A1").Value = "HorasTrabajadas"
Range("B1").Value = "ValorHora"
Range("C1").Value = "HorasExtras"
Range("D1").Value = "HorasExtraDoble"
Range("E1").Value = "HorasExtraTriple"
Range("F1").Value = "PagoHorasExtras"
Range("G1").Value = "PagoHorasNormales"
Range("H1").Value = "SalarioBruto"
Range("I1").Value = "TotalDescuentos"
Range("J1").Value = "SalarioNeto"
Range("C2").Formula = "=A2-40"
Range("D2").Formula = "=SI(C2<=8, C2, 8)"
Range("E2").Formula = "=SI(C2>8, C2-8, 0)"
Range("F2").Formula = "=(D2*B2*2)+(E2*B2*3)"
Range("G2").Formula = "=40*B2"
Range("H2").Formula = "=F2+G2"
Range("I2").Formula = "=H2*0.08"
Range("J2").Formula = "=H2-I2"
End Sub
Ese es exactamente el tipo de código que Excel genera cuando grabas una macro realizando ese mismo proceso.
Conclusión
Una macro grabada:
Permite automatizar la creación y el cálculo de la hoja.
Genera el VBA automáticamente.
Hace que puedas reconstruir la tabla de horas extras en un solo clic.
Es ideal para documentarla en un blog como ejemplo de automatización con Excel.
Comentarios
Publicar un comentario