📘 Curso Prompt para Excel – Módulo 6: Automatización con VBA y Macros
6️⃣5️⃣ Manejo de eventos (Worksheet_Change, Workbook_Open) con ayuda de prompts
VBA no solo ejecuta macros cuando tú lo decides: también puede reaccionar automáticamente a lo que pasa en Excel. Estos “disparadores” se llaman eventos y permiten automatizaciones poderosas:
- ✅
Workbook_Open→ Código que se ejecuta al abrir el archivo. - ✅
Worksheet_Change→ Código que se activa cuando alguien cambia una celda. - ✅
Worksheet_SelectionChange→ Reacciona cuando el usuario selecciona una celda.
🎯 ¿Por qué usar prompts aquí?
- 👉 Porque escribir eventos desde cero implica conocer el objeto correcto y la sintaxis.
- 👉 Con un buen prompt, la IA puede generar la estructura lista para copiar/pegar y tú solo ajustas el rango o mensaje.
- 👉 Ahorra horas de búsqueda de código base.
📌 Ejemplo de evento: Aviso automático si alguien cambia el precio
Queremos que, si se cambia un valor en la columna B, aparezca un mensaje alertando el cambio.
Private Sub Worksheet_Change(ByVal Target As Range)
' Revisa si la celda cambiada está en la columna B
If Not Intersect(Target, Me.Range("B:B")) Is Nothing Then
MsgBox "¡Atención! Se cambió un precio en la columna B."
End If
End Sub
📥 ¿Dónde va este código? Se pega en el módulo de la hoja (doble clic en el nombre de la hoja dentro del Editor de VBA).
💡 Cómo pedirlo con un prompt
Un prompt bien estructurado podría ser:
"Escríbeme un evento VBA Worksheet_Change que muestre un MsgBox cada vez que alguien modifique una celda en la columna B, y explícame dónde pegar el código y cómo funciona."
✅ ¿Qué obtendrás?
- ✔️ El bloque de código completo.
- ✔️ Una explicación línea a línea.
- ✔️ Instrucciones de dónde insertarlo (módulo de hoja, no módulo estándar).
❓ Pregunta de repaso de la Lección 6.5
¿Qué hace el evento Workbook_Open?
No hay comentarios:
Publicar un comentario