VBA – Evento Change de una hoja – Ejecutar una macro cuando una celda cambia

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Dennis Madrid

Last updated on agosto 22, 2022

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.

VBA editor Hoja1

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í.

Codificación VBA fácil

Deje de buscar código VBA en línea. Aprenda más sobre AutoMacro – Un generador de código VBA que permite a los principiantes codificar procedimientos desde cero con un mínimo conocimiento de codificación y con muchas características que ahorran tiempo a todos los usuarios alt text

vba-free-addin

Complemento de Ejemplos de Código de VBA

Acceda fácilmente a todos los ejemplos de código que se encuentran en nuestro sitio.

Simplemente navegue al menú, haga clic y el código se insertará directamente en su módulo. Complemento .xlam.

(¡No se requiere instalación!)

Descarga gratuita

Return to VBA Code Examples