Cómo crear una macro VBA con IA en menos de 5 minutos

Crear una macro con IA no requiere saber programar, pero sí saber pedirla. Con una plantilla de prompt bien construida puedes pasar de la idea a una macro funcionando en unos cinco minutos, y reutilizar ese mismo esquema para cualquier tarea repetitiva. Esta guía te da la plantilla, un ejemplo completo y una lista de comprobación para no ejecutar nada a ciegas.

Si es tu primera macro, empieza por la guía sobre cómo escribir macros de Excel con ChatGPT sin saber programar, donde se explica cómo activar la pestaña Programador y abrir el editor de VBA.

La plantilla de prompt para pedir una macro

Copia este esquema y rellena los huecos entre corchetes:

«Escribe una macro de Excel (VBA) que [qué debe hacer, en pasos numerados]. Los datos están en la hoja [nombre], en las columnas [lista de columnas], con encabezados en la fila 1. Uso Excel en español para [Windows/Mac]. Añade comentarios en el código, control de errores y un mensaje final que indique qué ha hecho. Explícame cómo instalarla y ejecutarla.»

Cada parte cumple una función: los pasos numerados evitan interpretaciones, los datos concretos evitan que la IA invente nombres de hojas o columnas, la plataforma evita código que solo funciona en Windows, y los comentarios te permiten entender lo que vas a ejecutar.

Los 5 minutos, paso a paso

  1. Minuto 1: define la tarea. Escribe en una frase qué quieres automatizar y sepárala en pasos.
  2. Minuto 2: pide el código con la plantilla anterior.
  3. Minuto 3: abre el editor (Alt + F11), inserta un módulo con Insertar → Módulo y pega el código.
  4. Minuto 4: prueba en una copia del archivo, nunca sobre el original. Ejecútala con F5.
  5. Minuto 5: revisa el resultado y, si algo no es lo esperado, copia el mensaje de error o describe la diferencia y pide la corrección.

Ejemplo completo: copiar la hoja activa con la fecha de hoy

Prompt utilizado:

«Escribe una macro de Excel (VBA) que 1) haga una copia de la hoja activa, 2) coloque la copia justo después de la original, 3) la renombre con el nombre original más la fecha de hoy en formato dd-mm-yyyy. Uso Excel en español para Windows. Añade comentarios y un mensaje de aviso si ya existe una hoja con ese nombre.»

Sub CopiarHojaConFecha()
    Dim nombre As String

    ' Nombre nuevo: hoja original + fecha (máximo 31 caracteres)
    nombre = Left(ActiveSheet.Name & " " & Format(Date, "dd-mm-yyyy"), 31)

    On Error GoTo Errores

    ' Copia la hoja activa justo después de ella misma
    ActiveSheet.Copy After:=ActiveSheet
    ActiveSheet.Name = nombre

    MsgBox "Hoja copiada como: " & nombre
    Exit Sub

Errores:
    MsgBox "No se pudo renombrar la copia. Puede que ya exista una hoja con ese nombre."
End Sub

Un detalle práctico: Excel limita los nombres de hoja a 31 caracteres y no admite caracteres como / o :, por eso la fecha usa guiones. Si ejecutas la macro dos veces el mismo día, saltará el aviso porque la hoja ya existe, y la copia quedará con un nombre provisional que puedes borrar o renombrar.

Lista de comprobación antes de ejecutar cualquier macro

  • ¿Lo has probado en una copia del archivo? Las macros no se deshacen con Ctrl + Z.
  • ¿Entiendes qué hace cada bloque? Pide a la IA que lo explique línea a línea.
  • ¿Hay instrucciones que borren, sobrescriban o accedan a otras carpetas? Si no las pediste, no la ejecutes.
  • ¿El libro se guardará como .xlsm? Si lo guardas como .xlsx, Excel elimina la macro.
  • ¿Has comprobado el resultado con datos reales variados? Prueba con casos normales y con filas raras o vacías.

Cómo pedir correcciones cuando falla

Si Excel muestra un error al ejecutar, copia estos tres elementos y pégalos en la IA:

  1. El mensaje de error exacto.
  2. La línea que aparece resaltada en amarillo en el editor.
  3. Una descripción de lo que esperabas que ocurriera.

Con esa información, la IA suele corregir el fallo a la primera. Si el problema tiene que ver con fórmulas y no con macros, consulta la guía para depurar errores en fórmulas de Excel con IA.

Siguientes pasos

Cuando tengas una macro que funciona, guarda el prompt que la generó como plantilla para tareas similares. Si quieres combinar varias tareas en un flujo completo, sigue con los casos prácticos de automatización de tareas repetitivas con IA.

Artículos relacionados

Más guías sobre este tema en IA en Excel: fórmulas y automatización. También te pueden interesar:

Scroll al inicio