VBA – Evento Change de una hoja – Ejecutar una macro cuando una celda cambia
Evento de cambio de hoja de cálculo
Puede querer ejecutar una macro cuando una celda cambia. Un uso popular de esta capacidad es hacer que el código personalizado valide una celda después de que se realice un cambio. Es fácil hacer esto usando el evento de cambio de los objetos de la hoja de trabajo.
En el Editor de Visual Basic debes primero hacer doble clic en el nombre de la hoja donde cambia la celda que activa la macro. Esto abre la ventana de código para esa hoja. En este caso quería ejecutar una macro cuando una celda de la Hoja1 cambiara.
Después de abrir la ventana de código para la hoja de cálculo, coloca tu código en el evento Worksheet_Change. El siguiente ejemplo mostrará un cuadro de mensaje si el contenido de la celda A1 cambia. Primero la subrutina se dispara si cualquier celda cambia, luego el uso de una sentencia IF..Then ejecutará el código sólo si la celda A1 fue la celda que cambió basada en el If…Then.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
MsgBox "¡Este código se ejecuta cuando la celda A1 cambia!"
End If
End Sub
Puede colocar su código directamente en la subrutina Worksheet_Change o llamar a otra macro desde allí.