Bonjour à tous,
Je fais face à un problème dont la solution doit certainement être toute simple.
J'ai créé un calendrier dont les cases se colorent automatiquement (en jaune ou en vert selon les cas) si elles correspondent à des dates de tâches à effectuer, rentrées sur des colonnes tierces. Tout est géré par VBA. J'ai ensuite inséré une case à cocher qui, lorsqu'elle est cochée, signifie que la tâche a été effectuée. Dans ce cas, les cases du calendriers s'affichent en rouge.
Jusque là tout va bien.
Le problème survient lorsque je décoche la case à cocher: dans ce cas là, j'aimerais que le changement de couleur (de jaune ou vert à rouge) s'annule. Le problème c'est que je ne sais pas comment faire pour annuler les effets de la case à cocher!
Voici le code pour un peu plus de clarté:
Private Sub CheckBox1_Click()
Dim dates As Range, planning As Range, debut As Range, fin As Range, today As Range
Set dates = Sheets("planning RH").Range("dates")
Set planning = Sheets("planning RH").Range("planning")
Set debut = Sheets("planning RH").Range("debut")
Set fin = Sheets("planning RH").Range("fin")
For x = 1 To 40
For y = 1 To 180
With CheckBox1
If CheckBox1.Value = True _
And (dates.Cells(1, y).Value >= debut.Cells(1, 1)) _
And (dates.Cells(1, y).Value <= fin.Cells(1, 1)) Then
planning.Cells(1, y).Interior.ColorIndex = 3
End If
If CheckBox1.Value = False _
And (dates.Cells(1, y).Value >= debut.Cells(1, 1)) _
And (dates.Cells(1, y).Value <= fin.Cells(1, 1)) Then
End If
End With
Next y
Next x
End sub
Grand merci pour votre aide toujours précieuse!
Salutations,
Christian