Pb de comportement de checkbox
Bonjour à tous,
J'ai un petit problème pour coder le comportement d'un ensemble de checkboxes.
Ma macro propose de réaliser 6 rapports différents. L'utilisateur coche les rapports qui l'intéressent puis un bouton déclenche le traitement.
Aux 6 cases à cocher des rapports, j'en ai ajouté une septième "Tous".
Lorsque je coche/décoche "Tous", les autres cases suivent. Pas de problème.
Maintenant, si à partir d'une situation où toutes les cases sont cochées, je décoche un rapport, je voudrais que la case "Tous" se décoche également. Ca, j'y arrive.
Le problème, c'est que lorsque "Tous" se décoche, elle décoche aussi toutes les autres ! Et je me retrouve sans cases cochées alors que j'attends que les cases des autres rapports restent cochées.
Ci-dessous mon code, super basique :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| Private Sub cb_Tous_Click()
CB_Schedule.Value = CB_Tous.Value
CB_RetT = CB_Tous.Value
CB_Jobs = CB_Tous.Value
CB_Frequences = CB_Tous.Value
CB_Dependances = CB_Tous.Value
CB_Evenements = CB_Tous.Value
End Sub
Private Sub cb_schedule_click()
If CB_Schedule.Value = False Then CB_Tous.Value = False
End Sub |
Je ne comprends pas pourquoi lorsque la procédure cb_schedule_clik s'exécute, la procédure cb_Tous_click s'exécute aussi.
Merci pour votre aide. Je dois rater un truc.
1 pièce(s) jointe(s)
Une version fonctionnelle
Bonjour,
Encore merci pour votre aide.
J'ai ajouté une petite ligne de code pour que si tous les rapports sont cochés individuellement, la case "Tous" s'active. C'est plus mieux ;).
Je joins un fichier fonctionnel pour un éventuel visiteur.
Maintenant, je n'ai plus qu'à voir si je peux optimiser le code. Je trouve la syntaxe lourde et les cases "clignotent" du fait des multiples mises à jour.
Peut-être en jouant avec la propriété EnableEvents.
Je reviendrai poster si j'ai un résultat plus satisfaisant.
Bonne continuation,