Bonjour,
Le sujet a déjà été abordé beaucoup de fois et j'ai pioché pas mal de choses à droite et à gauche, donc je ne repose pas la question. Par contre, ayant fait mon propre fichier pour tester les fonctions, j'en arrive à un point où je ne suis pas loin de réussir, je suis sûr que je suis à deux doigts, que mon code est quasi bon (c'est le quasi qui change tout ^^) et je ne comprends pas pour quoi ça ne marche pas. J'ai donc besoin d'aide.
Le système est tout bête : j'ai une liste d'item avec une case à cocher devant chacun. Je peux en cocher un, plusieurs, ou tous.
Si je veux tout cocher, j'ai une case qui permet de le faire en une fois (Tout cocher/décocher). Si je veux tout décocher, je décoche très logiquement cette même case. Au-dessus, j'ai un rappel de mes choix qui se met à jour automatiquement.
Le fait de tout cocher fonctionne très bien, toutes les cases, y compris la case "Tout cocher/décocher" se cochent. Mais pour décocher, c'est un autre problème. Ma case "Tout cocher/décocher" se décoche, mais les autres ne bougent pas et là, je ne comprends vraiment pas pourquoi.
Pour info, sur ce fichier de test, j'ai mis tous les contrôles et les cases liées ou de formule visibles pour faciliter l'analyse du fichier. J'ai également ajouter le bouton "décocher" pour éviter aux personnes qui voudraient m'aider et tester, d'avoir à décocher à chaque fois toutes les cases. Ça, ça marche ^^.
Voici le code, fruit de mes pérégrinations sur ce même forum et de mes connaissances (de base ) antérieures. (me suis un peu ennuyé à mettre des couleurs mais c'est quand même plus agréable à lire ^^).
Voilà l'histoire. Je pense ne pas être loin mais qu'à trop être la tête dans le code, je ne vois pas un truc qui va vous sauter à la figure.
Merci par avance de votre aide.
Le sujet a déjà été abordé beaucoup de fois et j'ai pioché pas mal de choses à droite et à gauche, donc je ne repose pas la question. Par contre, ayant fait mon propre fichier pour tester les fonctions, j'en arrive à un point où je ne suis pas loin de réussir, je suis sûr que je suis à deux doigts, que mon code est quasi bon (c'est le quasi qui change tout ^^) et je ne comprends pas pour quoi ça ne marche pas. J'ai donc besoin d'aide.
Le système est tout bête : j'ai une liste d'item avec une case à cocher devant chacun. Je peux en cocher un, plusieurs, ou tous.
Si je veux tout cocher, j'ai une case qui permet de le faire en une fois (Tout cocher/décocher). Si je veux tout décocher, je décoche très logiquement cette même case. Au-dessus, j'ai un rappel de mes choix qui se met à jour automatiquement.
Le fait de tout cocher fonctionne très bien, toutes les cases, y compris la case "Tout cocher/décocher" se cochent. Mais pour décocher, c'est un autre problème. Ma case "Tout cocher/décocher" se décoche, mais les autres ne bougent pas et là, je ne comprends vraiment pas pourquoi.
Pour info, sur ce fichier de test, j'ai mis tous les contrôles et les cases liées ou de formule visibles pour faciliter l'analyse du fichier. J'ai également ajouter le bouton "décocher" pour éviter aux personnes qui voudraient m'aider et tester, d'avoir à décocher à chaque fois toutes les cases. Ça, ça marche ^^.
Voici le code, fruit de mes pérégrinations sur ce même forum et de mes connaissances (de base ) antérieures. (me suis un peu ennuyé à mettre des couleurs mais c'est quand même plus agréable à lire ^^).
Code:
[COLOR="Blue"]Sub[/COLOR] coche_decoche()
[COLOR="Blue"]For Each[/COLOR] coche [COLOR="Blue"]In[/COLOR] ActiveSheet.Shapes [COLOR="DarkGreen"]'début de la boucle[/COLOR]
[COLOR="Blue"]If[/COLOR] coche.Name [COLOR="Blue"]Like[/COLOR] "Check*" [COLOR="Blue"]Then[/COLOR] [COLOR="DarkGreen"]' s'il c'est une case à cocher[/COLOR]
[COLOR="Blue"]If[/COLOR] coche.ControlFormat.Value = 1 [COLOR="Blue"]Then[/COLOR] [COLOR="DarkGreen"]' et si la case est cochée[/COLOR]
Feuil1.[H11:H15] = [COLOR="Blue"]True[/COLOR] [COLOR="DarkGreen"]' cocher toutes les cases[/COLOR]
[COLOR="Blue"]ElseIf[/COLOR] coche.ControlFormat.Value = 0 [COLOR="Blue"]Then[/COLOR] [COLOR="DarkGreen"]' si la case n'est pas cochée[/COLOR]
Feuil1.[H11:H15] = [COLOR="Blue"]False[/COLOR] [COLOR="DarkGreen"]' décocher toutes les cases[/COLOR]
[COLOR="Blue"]End If[/COLOR] [COLOR="DarkGreen"]' fin du premier si[/COLOR]
[COLOR="Blue"]End If[/COLOR] [COLOR="DarkGreen"]' fin du deuxième si[/COLOR]
[COLOR="Blue"]Next[/COLOR] [COLOR="DarkGreen"]' fin de la boucle[/COLOR]
[COLOR="Blue"]End Sub[/COLOR]
Voilà l'histoire. Je pense ne pas être loin mais qu'à trop être la tête dans le code, je ne vois pas un truc qui va vous sauter à la figure.
Merci par avance de votre aide.