Para que una fila o una celda o un rango de celdas se bloqueé, primero tienes que desbloquear todas las celdas, después tienes que proteger tu hoja.
Para desbloquear todas las celdas:
- Selecciona todas las celdas.
- Selecciona formato
- Formato de celdas
- Proteger
- Desmarca la casilla Bloqueada
Pon la siguiente macro en los eventos de tu hoja.
Cambia en la macro "abc" por el password que va a tener tu hoja.
Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
If Not Intersect(Target, Columns("A")) Is Nothing Then
ActiveSheet.Unprotect "abc"
For Each c In Target
Cells(c.Row, "B") = Date
Cells(c.Row, "A").Locked = True
Cells(c.Row, "B").Locked = True
Next
ActiveSheet.Protect "abc", _
DrawingObjects:=False, Contents:=True, _
Scenarios:=False, AllowFormattingCells:=True, _
AllowFormattingColumns:=True, AllowFormattingRows:=True, _
AllowInsertingColumns:=True, AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, _
AllowFiltering:=True, AllowUsingPivotTables:=True
End If
End Sub
Sigue las Instrucciones para poner la macro en worksheet
- Abre tu libro de excel
- Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
- Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
- Del lado derecho copia la macro
S a l u d o s . D a n t e A m o r
Recuerda valorar la respuesta
Funciona de maravilla pero tengo un inconveniente: al momento de intentar desbloquear la hoja me pide clave y la clave no es la que le asigné ¿Qué puedo hacer? - Monica Tovar
En la macro la clave es abc cambia las letras abc por el password que desees en estas líneas de la macro: ActiveSheet.Unprotect "abc" y también en esta línea: ActiveSheet.Protect "abc" - Dante Amor