Desactivar Celda Dependiendo del Valor de Otra

2 envíos / 0 nuevos
Último envío
mau1489
Imagen de mau1489
Offline
última acción: Hace 6 años 2 días
alta: 19/04/2018 - 16:53
Puntos: 25
Desactivar Celda Dependiendo del Valor de Otra

Hola buenas tardes les comento tengo un formulario, en la celda "C2" tengo un listbox con dos opciones, las cuales son: "Cuerpo Técnico" y "Jugador". En la celda "E2" es la que deseo desactivar si el valor de C2 es distino a "Jugador".

¿Como puedo generar una macro que me valide eso?

 

Saludos y gracias.

Cron
Imagen de Cron
Offline
última acción: Hace 8 meses 3 semanas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12735
Las celdas no se pueden

Las celdas no se pueden desactivar. Pero se puede simular mediante el bloqueo de la hoja.

Trabaja siempre con la hoja bloqueada, y con la celda C2 desprotegida.

Entonces programa tu macro en el evento:

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

 
Aquí primero comprueba que Target es la celda C2, y si es así, entonces desbloquea la hoja, cambia las propiedades que necesites de la celda E2, y vuelve a bloquear la hoja. Sería algo así como:
 
IF Range("C2").Value = "Jugador" then
ActiveSheet.Unprotect
Range("E2").Locked = False
with Range("E2").Interior
  .Pattern = xlNone
  .Tintandshade = 0
  .Patterntintandshade = 0
end with
with Range("E2").Font
  .ColorIndex = xlAutomatic
  .Tintandshade = 0
end with
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

ELSE
ActiveSheet.Unprotect
with Range("E2").Interior
  .Pattern = xlSolid
  .PatternColorIndex = xlAutomatic
  .ThemeColor = xlThemeColorDark1
  .TintAndShade = -0.149998474074526
  .Patterntintandshade = 0
end with
with Range("E2").Font
  .ThemeColor = xlThemeColorDark2
  .TintAndShade = -0.499984740745262
end with
Range("E2").Locked = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

END IF

Espero que te sirva.

Un saludo