.31.05.17
Buenas tardes, Jonathan
Tal vez sea conveniente usar una rutina basada en eventos tal que cuando B2 esté vacía las otras celdas con validación queden sin dato. La siguiente rutina hace eso en cascada. Es decir borrará las celdas que tuvieren combobox dependientes de ella, aunque sea posterior a B2.
Para que funcione, activa el editor de Visual Basic (presiona Alt+F11) y en el panel de la izquierda busca la hoja donde quieres que esto ocurra. Da doble click sobre ella. (Otra forma de llegar a este punto es hacer click derecho sobre la solapa de esta hoja y elegir la opción "Ver Código".
Allí pega el siguiente procedimiento de VBA:
Private Sub Worksheet_Change(ByVal Target As Range)
'---- Variables modificables ----
'=== JONATHAN, modifica estos datos de acuerdo a tu proyecto:
ConComboBox = Array("B2", "C4", "D6", "E6") 'direcciones de celdas con validación, escribir en cascada
'---- fin Variables
'
' VBA coding by FeJoAl
'
'---- inicio de rutina:
'
For LaCelda = 0 To UBound(ConComboBox)
If Target.Address(False, False) = ConComboBox(LaCelda) Then
If Target.Value = "" Then
For Depend = LaCelda + 1 To UBound(ConComboBox)
Application.EnableEvents = False
Range(ConComboBox(Depend)).ClearContents
Application.EnableEvents = True
Next
End If
End If
Next
End Sub
Espero que sea lo que esperabas. En tal caso, ya sabes qué hacer. Si no, escribeme de nuevo.
Un abrazo
Fer
.