Grabar tu primera macro
Graba acciones repetitivas para ejecutarlas automáticamente.
Las macros son una de las herramientas más poderosas de Excel para automatizar tareas repetitivas. En esta lección, aprenderás a grabar tu primera macro y entenderás los conceptos fundamentales que te permitirán ahorrar horas de trabajo manual.
¿Qué es una macro?
Una macro es una secuencia de instrucciones que Excel ejecuta automáticamente. Piensa en ella como una grabación de tus acciones: Excel memoriza cada clic, cada tecla presionada, y luego puede reproducir esas acciones cuando tú lo indiques.
Casos de uso comunes
| Tarea manual | Tiempo sin macro | Tiempo con macro |
|---|---|---|
| Formatear reporte semanal | 20 min | 5 segundos |
| Limpiar datos importados | 15 min | 3 segundos |
| Crear gráficos estándar | 10 min | 2 segundos |
| Consolidar múltiples hojas | 30 min | 10 segundos |
Habilitar la pestaña Desarrollador
Por defecto, Excel oculta las herramientas de macros. El primer paso es activar la pestaña Desarrollador.
En Windows
- Ve a Archivo > Opciones
- Selecciona Personalizar cinta de opciones
- En el panel derecho, marca la casilla Desarrollador
- Clic en Aceptar
En Mac
- Ve a Excel > Preferencias
- Selecciona Cinta de opciones y barra de herramientas
- En Pestañas principales, marca Desarrollador
- Clic en Guardar
Verificación: Deberías ver una nueva pestaña "Desarrollador" entre "Vista" y posiblemente "Complementos" en tu cinta de opciones.
Grabar tu primera macro
Vamos a crear una macro simple que formatee un encabezado de tabla.
Paso 1: Preparar los datos
Crea una hoja con datos de ejemplo:
A1: Producto B1: Ventas C1: Región D1: Fecha
A2: Laptop B2: 15000 C2: Norte D2: 01/01/2026
A3: Monitor B3: 8500 C3: Sur D3: 02/01/2026
Paso 2: Iniciar la grabación
- Ve a la pestaña Desarrollador
- Clic en Grabar macro
- Completa el cuadro de diálogo:
| Campo | Valor | Explicación |
|---|---|---|
| Nombre | FormatearEncabezado | Sin espacios ni caracteres especiales |
| Método abreviado | Ctrl+Shift+F | Atajo para ejecutar rápido |
| Almacenar en | Este libro | Solo disponible en este archivo |
| Descripción | Formatea la fila de encabezado | Documentación opcional |
- Clic en Aceptar
Paso 3: Ejecutar las acciones
Ahora Excel está grabando. Ejecuta estas acciones:
- Selecciona el rango A1:D1
- Aplica negrita (Ctrl+B)
- Cambia el color de fondo a azul oscuro
- Cambia el color de fuente a blanco
- Centra el texto horizontalmente
- Ajusta el ancho de columnas automáticamente
Paso 4: Detener la grabación
- Ve a Desarrollador > Detener grabación
- O clic en el cuadrado pequeño en la barra de estado
Tu primera macro está lista.
Ejecutar la macro
Tienes tres formas de ejecutar tu macro:
Opción 1: Atajo de teclado
Presiona Ctrl+Shift+F (el atajo que definiste).
Opción 2: Desde la cinta
- Ve a Desarrollador > Macros
- Selecciona FormatearEncabezado
- Clic en Ejecutar
Opción 3: Cuadro de diálogo
- Presiona Alt+F8
- Selecciona la macro
- Clic en Ejecutar
Referencias absolutas vs relativas
Este concepto es crucial para crear macros útiles.
Referencias absolutas (por defecto)
Cuando grabas con referencias absolutas, Excel recuerda las celdas exactas que seleccionaste.
' Código generado con referencia absoluta
Sub FormatearEncabezado()
Range("A1:D1").Select ' Siempre selecciona A1:D1
Selection.Font.Bold = True
End Sub
Problema: Si tus datos empiezan en F5, la macro seguirá formateando A1:D1.
Referencias relativas
Con referencias relativas, Excel recuerda el movimiento desde la celda activa.
Para activar referencias relativas:
- Antes de grabar, clic en Usar referencias relativas (Desarrollador)
- El botón se queda presionado
- Ahora graba tu macro
' Código generado con referencia relativa
Sub FormatearEncabezadoRelativo()
ActiveCell.Range("A1:D1").Select ' Relativo a celda activa
Selection.Font.Bold = True
End Sub
Ventaja: Funciona sin importar dónde estén tus datos.
¿Cuál usar?
| Situación | Tipo de referencia |
|---|---|
| Datos siempre en la misma ubicación | Absoluta |
| Datos en ubicaciones variables | Relativa |
| Formato de encabezados de tablas | Relativa |
| Insertar fórmulas en celda fija | Absoluta |
Consejo profesional: Puedes combinar ambos tipos en una misma macro. Activa/desactiva referencias relativas durante la grabación según necesites.
Guardar archivos con macros (.xlsm)
Las macros no se guardan en archivos .xlsx normales. Debes usar el formato correcto.
Formatos de archivo
| Formato | Extensión | Macros |
|---|---|---|
| Libro de Excel | .xlsx | No soporta |
| Libro habilitado para macros | .xlsm | Sí soporta |
| Libro binario | .xlsb | Sí soporta |
| Libro 97-2003 | .xls | Sí soporta |
Cómo guardar
- Ve a Archivo > Guardar como
- En Tipo, selecciona Libro de Excel habilitado para macros (*.xlsm)
- Asigna un nombre y guarda
Advertencia: Si guardas como .xlsx, Excel eliminará todas las macros sin avisar.
Configurar seguridad de macros
Excel tiene restricciones de seguridad porque las macros pueden contener código malicioso.
Niveles de seguridad
| Nivel | Comportamiento |
|---|---|
| Deshabilitar todas | Ninguna macro se ejecuta |
| Deshabilitar con notificación | Pregunta antes de habilitar (recomendado) |
| Deshabilitar excepto firmadas | Solo ejecuta macros con firma digital |
| Habilitar todas | Ejecuta cualquier macro (no recomendado) |
Configurar el nivel
- Ve a Archivo > Opciones > Centro de confianza
- Clic en Configuración del Centro de confianza
- Selecciona Configuración de macros
- Elige Deshabilitar todas las macros con notificación
- Clic en Aceptar
Ubicaciones de confianza
Puedes definir carpetas donde las macros siempre se ejecutan:
- En Centro de confianza, selecciona Ubicaciones de confianza
- Clic en Agregar nueva ubicación
- Examina y selecciona la carpeta de tus archivos de trabajo
- Marca Las subcarpetas de esta ubicación también son de confianza
- Clic en Aceptar
Ejercicio práctico: Macro de limpieza de datos
Vamos a crear una macro más útil que limpie datos importados.
Escenario
Recibes un archivo CSV con espacios extra, texto en mayúsculas mezcladas, y necesitas estandarizarlo.
Pasos para grabar
- Activa referencias relativas
- Clic en Grabar macro (nombre: LimpiarDatos, atajo: Ctrl+Shift+L)
- Selecciona la columna A completa
- Ve a Inicio > Buscar y seleccionar > Reemplazar
- Busca dos espacios " ", reemplaza por un espacio " "
- Clic en Reemplazar todos
- Con la columna aún seleccionada, aplica la función MAYUSC.INICIAL
- Detén la grabación
El código generado
Al ver el código (Desarrollador > Macros > Editar), verás algo como:
Sub LimpiarDatos()
'
' LimpiarDatos Macro
' Limpia espacios extra y estandariza mayúsculas
'
' Acceso directo: Ctrl+Shift+L
'
Columns("A:A").Select
Selection.Replace What:=" ", Replacement:=" ", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Buenas prácticas al grabar macros
1. Planifica antes de grabar
- Escribe los pasos en papel primero
- Practica la secuencia sin grabar
- Identifica qué referencias necesitas (absolutas/relativas)
2. Mantén las macros simples
- Una macro = una tarea específica
- Es mejor tener 5 macros pequeñas que una gigante
- Facilita la depuración de errores
3. Documenta tus macros
- Usa nombres descriptivos
- Agrega descripción al crear
- Mantén un registro de qué hace cada macro
4. Haz respaldos
- Guarda versiones antes de modificar macros
- Exporta macros importantes a archivos .bas
- Nunca trabajes en el único archivo original
Errores comunes y soluciones
| Error | Causa | Solución |
|---|---|---|
| "Las macros están deshabilitadas" | Configuración de seguridad | Habilita macros o agrega ubicación de confianza |
| La macro no hace nada | Grabaste en otra hoja | Verifica la hoja activa antes de ejecutar |
| La macro se ejecuta en lugar incorrecto | Referencias absolutas | Usa referencias relativas |
| "No se puede guardar como .xlsx" | Contiene macros | Guarda como .xlsm |
| Macro desaparece al cerrar | No guardaste como .xlsm | Guarda con formato correcto |
Puntos clave de esta leccion
- Las macros automatizan tareas repetitivas grabando tus acciones
- Habilita la pestaña Desarrollador para acceder a las herramientas de macros
- Referencias absolutas: celdas fijas; relativas: movimientos desde celda activa
- Guarda siempre como .xlsm para preservar las macros
- Configura la seguridad en "Deshabilitar con notificacion" para equilibrio seguridad/usabilidad
Próxima lección
En la siguiente lección, aprenderás a editar las macros grabadas usando el Editor de VBA. Descubrirás que el código generado se puede mejorar y personalizar para hacerlo más potente y flexible.
Quiz de comprensión
- ¿Qué formato de archivo debes usar para guardar macros en Excel?
- ¿Cuál es la diferencia entre referencias absolutas y relativas al grabar macros?
- ¿Qué atajo de teclado abre el cuadro de diálogo de macros?
- ¿Por qué es importante configurar la seguridad de macros?
¿Completaste esta lección?
Marca esta lección como completada. Tu progreso se guardará en tu navegador.