Lección 28 de 37Automatización con Macros

Grabar tu primera macro

Graba acciones repetitivas para ejecutarlas automáticamente.

15 minutos

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

  1. Ve a Archivo > Opciones
  2. Selecciona Personalizar cinta de opciones
  3. En el panel derecho, marca la casilla Desarrollador
  4. Clic en Aceptar

En Mac

  1. Ve a Excel > Preferencias
  2. Selecciona Cinta de opciones y barra de herramientas
  3. En Pestañas principales, marca Desarrollador
  4. 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

  1. Ve a la pestaña Desarrollador
  2. Clic en Grabar macro
  3. 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
  1. Clic en Aceptar

Paso 3: Ejecutar las acciones

Ahora Excel está grabando. Ejecuta estas acciones:

  1. Selecciona el rango A1:D1
  2. Aplica negrita (Ctrl+B)
  3. Cambia el color de fondo a azul oscuro
  4. Cambia el color de fuente a blanco
  5. Centra el texto horizontalmente
  6. Ajusta el ancho de columnas automáticamente

Paso 4: Detener la grabación

  1. Ve a Desarrollador > Detener grabación
  2. 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

  1. Ve a Desarrollador > Macros
  2. Selecciona FormatearEncabezado
  3. Clic en Ejecutar

Opción 3: Cuadro de diálogo

  1. Presiona Alt+F8
  2. Selecciona la macro
  3. 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:

  1. Antes de grabar, clic en Usar referencias relativas (Desarrollador)
  2. El botón se queda presionado
  3. 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

  1. Ve a Archivo > Guardar como
  2. En Tipo, selecciona Libro de Excel habilitado para macros (*.xlsm)
  3. 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

  1. Ve a Archivo > Opciones > Centro de confianza
  2. Clic en Configuración del Centro de confianza
  3. Selecciona Configuración de macros
  4. Elige Deshabilitar todas las macros con notificación
  5. Clic en Aceptar

Ubicaciones de confianza

Puedes definir carpetas donde las macros siempre se ejecutan:

  1. En Centro de confianza, selecciona Ubicaciones de confianza
  2. Clic en Agregar nueva ubicación
  3. Examina y selecciona la carpeta de tus archivos de trabajo
  4. Marca Las subcarpetas de esta ubicación también son de confianza
  5. 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

  1. Activa referencias relativas
  2. Clic en Grabar macro (nombre: LimpiarDatos, atajo: Ctrl+Shift+L)
  3. Selecciona la columna A completa
  4. Ve a Inicio > Buscar y seleccionar > Reemplazar
  5. Busca dos espacios " ", reemplaza por un espacio " "
  6. Clic en Reemplazar todos
  7. Con la columna aún seleccionada, aplica la función MAYUSC.INICIAL
  8. 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

  1. ¿Qué formato de archivo debes usar para guardar macros en Excel?
  2. ¿Cuál es la diferencia entre referencias absolutas y relativas al grabar macros?
  3. ¿Qué atajo de teclado abre el cuadro de diálogo de macros?
  4. ¿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.