Macro grabar cambios de varias hojas en una hoja definida

Se puede crear una acción en excel automática para grabar los cambio realizados en varias hojas,

La idea es que ponga los datos cambiados, la celda y la fecha en una hoja control y que sea histórico, es decir que si realizo más de un cambio guarde todos los realizado como una base de datos.

1 Respuesta

Respuesta
1

Es posible, pero tendrás que poner el siguiente código en todas las hojas que quieras que registren los cambios. A tener en cuenta que si modificas varias celdas al mismo tiempo no registrará el nuevo valor.. pruebas y me dices.

Aquí el código:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Worksheets("CAMBIOS").Range("D2").Value = "" Then
    R = 2
Else
    R = Worksheets("CAMBIOS").Range("D1").End(xlDown).Row + 1
End If
Worksheets("CAMBIOS").Range("A" & R).Value = Target.Worksheet.Name
Worksheets("CAMBIOS").Range("B" & R).Value = Target
Worksheets("CAMBIOS").Range("C" & R).Value = Target.Address
Worksheets("CAMBIOS").Range("D" & R).Value = Now()
End Sub

Observa que la hoja donde se registra la actividad debe existir y se debe llamar "CAMBIOS". Como encabezados en esa hoja puedes poner en "A1" "HOJA", en "B1" "NUEVO VALOR" (antes de que preguntes, no es posible o no he sabido cómo registrar el valor anterior), en "C1" "RANGO" y en "D1" "FECHA".

Estimado, no registra nada

Yo lo he probado y funciona correctamente, por favor, lee atentamente la respuesta y aplica la al pie de la letra.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas