Las macros permiten grabar y ejecutar secuencias de acciones para automatizar tareas repetitivas en Excel. En este tutorial verás cómo usar la grabadora, editar el código VBA básico y ejemplos reales de aplicación.
1. Habilitar la pestaña Desarrollador
- Archivo > Opciones > Personalizar cinta de opciones.
- Activar “Desarrollador” en la lista de pestañas.
- Presionar Aceptar.
2. Grabar una Macro
- En Desarrollador > Grabar macro.
- Asignar nombre:
FormatearInforme. - Descripción opcional y ubicación “Este libro”.
- Realizar acciones (p. ej. dar formato a un rango).
- Pulsar “Detener grabación”.
3. Ejemplo Práctico: Formatear Informe
Automatiza aplicar negrita, color de fondo y ancho de columnas:
Sub FormatearInforme()
' Negrita en encabezado
Range("A1:F1").Font.Bold = True
' Fondo azul suave
Range("A1:F1").Interior.Color = RGB(0, 112, 192)
' Autoajustar ancho
Columns("A:F").AutoFit
' Orientación horizontal de página
ActiveSheet.PageSetup.Orientation = xlLandscape
End Sub
4. Abrir el Editor de VBA
- Desarrollador > Visual Basic
- O bien
Alt + F11
En el proyecto VBA encontrarás Módulo1 con tu macro grabada.
5. Editar Código VBA
Personaliza tu macro añadiendo comentarios y validaciones:
Sub FormatearInforme()
' Comprobar si la hoja existe
If Not WorksheetExists("Informe") Then Exit Sub
With Sheets("Informe")
.Range("A1:F1").Font.Bold = True
.Range("A1:F1").Interior.Color = RGB(0, 112, 192)
.Columns("A:F").AutoFit
End With
End Sub
Function WorksheetExists(wsName As String) As Boolean
On Error Resume Next
WorksheetExists = Not Worksheets(wsName) Is Nothing
On Error GoTo 0
End Function
6. Asignar Macro a Botón
- Insertar > Forma > Elige una forma (botón).
- Clic derecho > Asignar macro > seleccionar
FormatearInforme. - Pulsar botón ejecuta la macro.
Caso de Estudio Real
Una empresa de marketing generaba reportes semanales manualmente en 4 horas. Implementó macros:
- Importar datos de CSV
- Formatear tablas y gráficos
- Enviar informe por correo
Resultado: Redujo a 30 minutos y eliminó errores humanos.
Errores Comunes y Soluciones
1. Seguridad de Macros Deshabilitada
Problema: Excel bloquea macros.
Solución: Archivo > Opciones > Centro de confianza > Configuración de macros > Habilitar todas las macros (con precaución).
2. Error de Sintaxis
Problema: Código mal escrito.
Solución: Verificar comillas, paréntesis y nombres de objetos.
Consejos Profesionales
- Divide macros largas en subrutinas pequeñas.
- Usa comentarios
'para documentar pasos. - Gestiona errores con
On ErroryMsgBox. - Protege tu código con contraseña en Propiedades del proyecto VBA.
Ejercicios Prácticos
Ejercicio 1: Limpieza de Datos
Graba macro que elimine filas vacías y ajuste formato.
Ejercicio 2: Consolidación
Crea macro que copie hojas de varios libros en uno solo.
Ejercicio 3: Envío Automático
Programa macro que envíe el archivo actual por Outlook.