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

Entradas populares de este blog

Formatos condicionales