No escribir en una celda dependiendo del valor de otra

Necesito una fórmula de validación de datos que no me deje escribir en una celda si otra tiene un valor especifico

1 respuesta

Respuesta
1

Puedes usar la protección de la hoja para realizar esta acción...

* Selecciona toda la hoja, desmarca la casilla de "Bloqueada" para que todas las celdas queden libres

* Coloca el siguiente código en vba, dentro de la hoja que usaras

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
c = ActiveCell.Row
CRef = 3  ' <<<Referencia para bloquear
Cbloq = 1 ' <<<Celda a bloquear
ActiveSheet.Unprotect ""
If Cells(c, CRef) <> "" Then
    Cells(c, Cbloq).Locked = True
Else
    Cells(c, Cbloq).Locked = False
End If
ActiveSheet.Protect ""
End Sub

Cambia las columnas.... CRef es la celda la cual haras referencia para bloquear o desbloquear la cual escribes, Cbloq será la celda que bloquearas

* Una vez echo esto, bloquea tu hoja y agrega la contraseña en tu código dentro de las comillas

Listo! Cada vez que hayan modificaciones en tu hoja podras o no escribir dependiendo si en tu celda de referencia hay algún dato...

Esta puesto para que si la celda no esta en blanco se bloquee... si deseas agregar algo especifico cambia esta linea:

If Cells(c, CRef) <> "" Then

Por esta:

If Cells(c, CRef) = "TU CONDICION" Then

CRef y Cbloq son números de columna. =)

CRef:Columna 3 / CBloq: Columna 1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas