Como puedo bloquear una celda al escribir un valor en otra celda, execel

Quiero poner un valor en C1, mayor que 60 y que no me permita escribir en F1,

1 respuesta

Respuesta
1

Entra al Editor y selecciona el objeto HOJA donde vayas a trabajar. Observa la imagen.

La macro es la siguiente:

Private Sub Worksheet_Change(ByVal Target As Range)
'x Elsamatilde
'se controla que el cambio se da en col C
If Target.Column <> 3 Then Exit Sub
'se desprotege la hoja y bloquea celda F de la misma fila
ActiveSheet.Unprotect
If Target.Value > 60 Then
    Range("F" & Target.Row).Locked = True
Else
    Range("F" & Target.Row).Locked = False
End If
ActiveSheet.Protect
End Sub

Observa que si cambias el valor a uno <= 60 la celda se vuelve a desbloquear.

El uso de clave es opcional. En caso de tenerla las instrucciones de protección deben incluirla:

ActiveSheet. Unprotect "tu_clave" lo mismo en la de protección.

TE recuerdo que la consulta sigue abierta... no olvides valorar la respuesta (opciones: excelente o buena).

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas