¿Cómo puedo fechar los cambios de una columna al copiar varios registros con VBA excel?

Hola buenas,

Me gustaría ver si pudieran ayudarme, la verdad es que no estoy muy ducho en programación VBA y me encuentro algo perdido.

Tengo una hoja que lo que hace es recoger una serie de registros de incidencias, cada registro esta en una fila difierente y van desde la columna D hasta la L. Los registros me llegan todos los dias en un archivo de excel que copio y pego de forma manual a mi hoja y que automáticamente me pone la fecha en la columna M ,hasta ahora lo hacia mediante formulas pero el objetivo es hacerlo mediante una macro para no hacerla muy pesada. He introducido el siguiente código, todo me funciona si meto los regístros a mano pero al seleccionar los datos de forma conjunta y pegarlos me añade en las celdas de la columna M hasta la Q y de todas la filas añadidas el dato de la fecha.

El código:

Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:=""
tiempo = Date
If Target.Column = 4 Then Target.Offset(0, 7) = tiempo
ActiveSheet.Protect Password:=""
End Sub

Muchas gracias de antemano

1 respuesta

Respuesta
1

¿El dato de la fecha en que columna debe ir?

Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:=""
tiempo = Date
If Target.Column = 4 Then activesheet.cells(Target.row, 11) = tiempo
ActiveSheet.Protect Password:=""
End Sub

Prueba este código y me comentas sobre el resultado

Hola gracias por tu pronta respuesta.

He probado los cambios y al pegar varias filas solo pone la fecha a la primera y el resto quedan en blanco. Necesitaría que todas las filas incluyeran la fecha.

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 4 Then
For Each Row In Target.Rows

ActiveSheet.Cells(row.Row, 11) = date
Next

end if

end sub

Creo que asi debe funcionar, aunque esta sin probar, ya me dices.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas