.04/10/16
Buenos días, Carlos
Me cuesta deducir el patrón que sigue la selección de las celdas asociadas en función de los ejemplos que pasaste.
Haremos entonces una primera aproximación a la solución definitiva.
La siguiente rutina hace estrictamente lo que solicitaste.
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 código:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'D7 se remarque la F5 y la F8, al pulsar en la E7 se remarque la F6 y G4
Set1 = Array("D7", "F5", "F8") ' primer ejemplo. La primera dirección es la que dispara que se coloreen las dos siguientes
Set2 = Array("E7", "F6", "G4") ' segundo ejemplo. La primera dirección es la que dispara que se coloreen las dos siguientes
ElColor = 6 ' amarillo
If Target.Address(False, False) = Set1(0) Then
Range(Set1(1)).Interior.ColorIndex = ElColor
Range(Set1(2)).Interior.ColorIndex = ElColor
Range(Set2(1)).Interior.ColorIndex = 0
Range(Set2(2)).Interior.ColorIndex = 0
ElseIf Target.Address(False, False) = Set2(0) Then
Range(Set1(1)).Interior.ColorIndex = 0
Range(Set1(2)).Interior.ColorIndex = 0
Range(Set2(1)).Interior.ColorIndex = ElColor
Range(Set2(2)).Interior.ColorIndex = ElColor
Else
Range(Set1(1)).Interior.ColorIndex = 0
Range(Set1(2)).Interior.ColorIndex = 0
Range(Set2(1)).Interior.ColorIndex = 0
Range(Set2(2)).Interior.ColorIndex = 0
End If
End Sub
Cierra el Editor y lo tendrás funcionando
Verás que, al inicio de la rutina, le indiqué dos matrices que incluyen las celdas de tu ejemplo.
La primera dirección es la que dispara que se remarquen las dos celdas siguientes.
Pruebalo y dime cómo debe comportarse la rutina de acuerdo a lo que necesitas.
Un abrazo
Fernando
(Buenos Aires, Argentina)
.