Evento Worksheet. Change (Excel)Worksheet.Change event (Excel)

Se produce cuando el usuario o un vínculo externo cambia las celdas de la hoja de cálculo.Occurs when cells on the worksheet are changed by the user or by an external link.

SintaxisSyntax

expresión. Cambiar (Destino)expression.Change (Target)

expresión Variable que representa un objeto Worksheet .expression A variable that represents a Worksheet object.

ParámetrosParameters

NombreName Obligatorio/opcionalRequired/Optional Tipo de datosData type DescripciónDescription
TargetTarget ObligatorioRequired RangeRange Rango cambiado.The changed range. Puede ser más de una celda.Can be more than one cell.

Valor devueltoReturn value

NothingNothing

ObservacionesRemarks

Este evento no se produce cuando las celdas cambian durante un nuevo cálculo.This event does not occur when cells change during a recalculation. Use el evento Calculate para interceptar una actualización de hoja.Use the Calculate event to trap a sheet recalculation.

EjemploExample

En el código de ejemplo siguiente, se cambia a azul el color de las celdas modificadas.The following code example changes the color of changed cells to blue.

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.The following code example verifies that, when a cell value changes, the changed cell is in column A, and if the changed value of the cell is greater than 100. Si el valor es mayor que 100, la celda adyacente de la columna B cambia a color rojo.If the value is greater than 100, the adjacent cell in column B is changed to the color red.

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.The following code example sets the values in the range A1:A10 to be uppercase as the data is entered into the cell.

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 comentariosSupport and feedback

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación?Have questions or feedback about Office VBA or this documentation? 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.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.