Compartir a través de


Evento Worksheet.Change (Excel)

Se produce cuando el usuario o un vínculo externo cambia las celdas de la hoja de cálculo.

Sintaxis

expresión. Cambiar (destino)

Expresión Variable que representa un objeto Worksheet .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
Target Obligatorio Range Rango cambiado. Puede ser más de una celda.

Valor devuelto

Nothing

Comentarios

Este evento no se produce cuando las celdas cambian durante un nuevo cálculo. Use el evento Calculate para interceptar una actualización de hoja.

Ejemplo:

En el código de ejemplo siguiente, se cambia a azul el color de las celdas modificadas.

Private Sub Worksheet_Change(ByVal Target as Range) 
    Target.Font.ColorIndex = 5 
End Sub

En el código de ejemplo siguiente, se comprueba que, cuando cambia el valor de una celda, la celda modificada está en la columna A y si el valor modificado de la celda es mayor que 100. Si el valor es mayor que 100, la celda adyacente de la columna B cambia a color rojo.

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 
    If Target.Column = 1 Then 
        ThisRow = Target.Row 
        If Target.Value > 100 Then 
            Range("B" & ThisRow).Interior.ColorIndex = 3 
        Else 
            Range("B" & ThisRow).Interior.ColorIndex = xlColorIndexNone 
        End If 
    End If 
End Sub

En el código de ejemplo siguiente, se establecen los valores del rango A1:A10 para que sean en mayúsculas a medida que los datos se entran en la celda.

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1:A10")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    'Set the values to be uppercase
    Target.Value = UCase(Target.Value)
    Application.EnableEvents = True
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.