VBA: fecha de llenado automático cuando los datos ingresados ​​en la celda

0

Tengo una hoja de cálculo de seguimiento donde me gustaría que la fecha en que se completa una celda se complete automáticamente en la siguiente columna. Encontré el siguiente código que funciona para el primero (I: I), pero me gustaría agregar el mismo código a otras 5 columnas (es decir, cuando los datos se ingresan en K1, la fecha se llena en L1, cuando los datos se ingresan en P1 , la fecha se completa en Q1).

Nunca he usado VBA antes. Intenté simplemente copiar / pegar el código y cambiar el Rango, pero recibo un error de Nombre ambiguo. ¿Cómo cambio el nombre para poder reutilizar el código?

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim A As Range, B As Range, Inte As Range, r As Range
    Set A = Range("I:I")
    Set Inte = Intersect(A, Target)
    If Inte Is Nothing Then Exit Sub
    Application.EnableEvents = False
        For Each r In Inte
            r.Offset(0, 1).Value = Date
        Next r
    Application.EnableEvents = True
End Sub

Gracias,

Melanie

mctee
fuente

Respuestas:

2

El cambio para incorporar múltiples columnas es bastante simple. Solo se debe cambiar una línea de código:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim A As Range, B As Range, Inte As Range, r As Range
Set A = Range("I:I,K:K,P:P")
Set Inte = Intersect(A, Target)
If Inte Is Nothing Then Exit Sub

Application.EnableEvents = False
    For Each r In Inte
        r.Offset(0, 1).Value = Date
    Next r
Application.EnableEvents = True
End Sub

Esto monitoreará las columnas I , K y P

Estudiante de gary
fuente