Cita:  
					Iniciado por yenay  
  Mira a a ver así:
     
  
Gracias funciona pero con una pequeña modificación sobre tu código:  
 Cita:  Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rngFechas As Range
 
Set rngFechas = Range("D:D, F:F")
If (Union(Target, rngFechas).Address = rngFechas.Address) And ((Target.Interior.ColorIndex <> 2) And (Target.Interior.ColorIndex <> 5)) Then _
Call abrir_calendario
 
 
End Sub
    Lo había solucionado de otra manera pero así es más cómodo. 
Pero... ahora me surge otro problema: 
Las celdas donde debe de lanzarse el evento tienen un formato condicional que hace que cambien de color al cumplirse, pero el Interior.ColoIndex es Blanco aunque la celda sea Naranja o Verde. Lo he solucionado poniendo el fondo de la celda en Negro, pero creo que eso es una chapucilla.  
Alguna idea. 
Gracias.