. 18/08/16
Buenos días, Diego
Es altamente probable que yo no haya entendido que quieres decir con bloquear las columnas.
Voy a interpretar que es ocultarlas, aunque -como dije- puedes necesitar otra cosa.
Pero la rutina que sigue reacciona a los cambios en tu celda C5 ocultando, por ahora, las columnas indicadas
Haz click con el botón derecho del mouse sobre la pestaña de la hoja donde quieres que ocurra lo que solicitas. Elije la opción "Ver Código" y pega lo siguiente:
Private Sub Worksheet_Change(ByVal Target As Range)
CeldaSele = "C5"
Set isect = Application.Intersect(Range(CeldaSele), Target)
If Not isect Is Nothing Then
Select Case UCase(Range(CeldaSele).Value)
'CLAVES: EA ó SI me bloquee las columnas Q a T, si selecciono las opciones SC ó DV me bloquee las columnas U a X y si selecciono las opciones TA ó IF no me bloquee ninguna columna.
Case "EA", "SI"
Cells.EntireColumn.Hidden = False
LasCols = "Q:T"
Columns(LasCols).EntireColumn.Hidden = True
Case "SC", "DV"
Cells.EntireColumn.Hidden = False
LasCols = "U:X"
Columns(LasCols).EntireColumn.Hidden = True
Case "TA", "IF"
Cells.EntireColumn.Hidden = False
End Select
End If
Set isect = Nothing
End Sub
Luego me dirás exactamente qué quieres que haga esta rutina, si es que no fuera ocultar columnas.
Un abrazo
Fernando.