Una macro es una secuencia de acciones que Excel ejecuta sola con un clic: dar formato a un informe, limpiar filas vacías, copiar datos entre hojas. Hasta hace poco había que aprender VBA (el lenguaje de programación de Office) para crearlas. Hoy puedes describir lo que quieres en lenguaje normal y pedirle a ChatGPT o Claude que escriba el código por ti. En esta guía verás el proceso completo, con dos ejemplos reales y los riesgos que debes conocer antes de ejecutar código que no has escrito tú.
Qué es una macro y cuándo compensa usarla
Las fórmulas calculan valores dentro de las celdas. Las macros hacen acciones: formatear, mover, borrar, copiar, crear hojas. Si haces lo mismo más de dos o tres veces (por ejemplo, cada mes al recibir el informe de ventas), es una buena candidata a macro.
Antes de empezar: activa la pestaña Programador
- Ve a Archivo → Opciones → Personalizar cinta de opciones.
- En la columna derecha, marca la casilla Programador.
- Acepta. Verás una nueva pestaña con el botón Visual Basic.
También puedes abrir el editor de VBA con el atajo Alt + F11.
Paso a paso: de la idea a la macro funcionando
1. Describe la tarea con todo el detalle posible. Cuanto más concreto seas, mejor código recibirás:
«Escribe una macro de Excel (VBA) que, en la hoja activa, ponga la primera fila en negrita con fondo azul oscuro y letra blanca, ajuste el ancho de todas las columnas y active el autofiltro si no está activado. Explícame qué hace cada línea.»
2. Abre el editor. Pulsa Alt + F11, y en el menú elige Insertar → Módulo.
3. Pega el código que te dé la IA en el módulo en blanco.
4. Ejecútala. Coloca el cursor dentro de la macro y pulsa F5, o vuelve a Excel y usa Programador → Macros → Ejecutar.
5. Guarda el libro como .xlsm. Los archivos .xlsx no conservan macros. Si guardas en .xlsx, Excel las eliminará.
Ejemplo 1: dar formato a un informe
Sub FormatearInforme()
With ActiveSheet
With .Rows(1)
.Font.Bold = True
.Font.Color = RGB(255, 255, 255)
.Interior.Color = RGB(31, 78, 121)
End With
.Columns.AutoFit
If Not .AutoFilterMode Then .Range("A1").AutoFilter
End With
End SubEs el tipo de tarea ideal para empezar: repetitiva, con resultado visible al instante y sin riesgo de perder datos.
Ejemplo 2: eliminar filas vacías
Prompt: «Escribe una macro que elimine todas las filas completamente vacías de la hoja activa, recorriéndolas de abajo hacia arriba.»
Sub EliminarFilasVacias()
Dim i As Long, ultima As Long
With ActiveSheet.UsedRange
ultima = .Row + .Rows.Count - 1
End With
For i = ultima To 1 Step -1
If Application.WorksheetFunction.CountA(Rows(i)) = 0 Then
Rows(i).Delete
End If
Next i
End SubEl detalle de recorrer las filas de abajo hacia arriba es importante: si borras de arriba hacia abajo, las filas se desplazan y la macro se salta algunas. Es un buen ejemplo de por qué conviene pedirle a la IA que explique su código.
Riesgos y errores comunes
- Las macros no se pueden deshacer. Ctrl + Z no revierte lo que hace una macro. Trabaja siempre sobre una copia del archivo la primera vez.
- No ejecutes código que no entiendes. Pide a la IA que lo explique línea a línea. Si algo incluye instrucciones como
Kill,Shello que accedan a otras carpetas y no lo habías pedido, no lo ejecutes. - Cuidado con archivos con macros que te envían. Excel bloquea las macros de archivos descargados de internet por seguridad. No actives el contenido de archivos de origen desconocido.
- Errores de sintaxis por versión. Si al ejecutar aparece un error, copia el mensaje y el código y pégalos en la IA. Suele corregirlo a la primera.
- Datos confidenciales. No pegues datos reales de clientes en el chat para que la IA «vea» la estructura. Describe las columnas o usa datos de ejemplo.
Cuándo usar fórmulas y cuándo macros
| Necesitas | Usa |
|---|---|
| Calcular un valor a partir de otros | Fórmula |
| Que el resultado se actualice solo al cambiar datos | Fórmula |
| Formatear, limpiar, mover o copiar datos | Macro |
| Repetir una secuencia de pasos con un clic | Macro |
Siguientes pasos
Con este proceso puedes automatizar la mayoría de tareas repetitivas de oficina. En el próximo artículo veremos cómo usar la IA para depurar errores en tus fórmulas cuando algo no funciona.
Artículos relacionados
Más guías sobre este tema en IA en Excel: fórmulas y automatización. También te pueden interesar: