Registrar cuando se modifiquen las celdas, y bloquearla de acuerdo a la fecha que tenga una celda

Buenos días Dam, espero que te encuentres bien, tengo una hoja "Plan" en la cual se deben escribir datos en la celdas que están en el rango B18:I48, como puedo:

1. Crear una macro que me registre la fecha en que se modifica alguna de estas celdas, por ejemplo si se modifica la celda B18, que me aparezca la en la celda J18 la fecha en que se modifico esa celda.

2.proteger la celda contra escritura si la celda del Rango B18:I18, si la fecha de modificación es posteriaor a la fecha que esta en la celda A2.

espero que me puedas ayudar, Gracias

AW

1 Respuesta

Respuesta
1

Sigue las Instrucciones para poner la macro en worksheet
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
4. Del lado derecho copia la macro

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.DAM
If Not Intersect(Target, Range("B18:I48")) Is Nothing Then
    For Each f In Target
        ActiveSheet.Unprotect "123"
        Range("J" & f.Row) = Date
        If Date > Range("A2") Then
            Range("B" & f.Row & ":J" & f.Row).Locked = True
            Range("B" & f.Row & ":J" & f.Row).FormulaHidden = False
        End If
        ActiveSheet.Protect "123", DrawingObjects:=True, _
            Contents:=True, Scenarios:=True
    Next
End If
End Sub

La hoja queda protegida con password 123

Prueba y me comentas
Saludos. DAM
Si es lo que necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas