formes automatiques groupées et vba
Bonjour à tous,
Dans mon désespoir, je fais appel à vous !
Voilà, je programme en vba excel 2002 SP3 des automations sur des formes automatiques.
En bref, j'ai dessiné un feu tricolores avec plusieurs rectangles nommés ("Rouge", "Jaune", "Vert").
A ce moment, j'ai réalisé le code pour allumer ou éteindre le feu en changeant les couleurs de mes rectangles comme ceci:
Code:
Me.Shapes("Rouge").Fill.ForeColor.RGB = RGB(50, 0, 0)
Ce code fonctionne !!!
Pour simplifier la mise en page et structuré mon code j'ai voulu grouper ses formes en sous ensembles nommés "Feu1", "Feu2", etc...
Maintenant, je n'arrive plus à modifier les rectangles qui compose le groupe à partir de leurs noms.
J'ai essayé ce type de code :
Code:
Me.Shapes("Feu1").GroupItems("Rouge").Fill.ForeColor.RGB = RGB(50, 0, 0)
Citation:
Erreur d'éxecution '5' : Argument ou appel de procédure incorrect !
Plusieurs essais que j'ai réalisé :
Code:
Msgbox = Me.Shapes("Feu1").GroupItems("Rouge").Name
--> Fonctionne pas et retourne l'erreur 5
Code:
Msgbox = Me.Shapes("Feu1").GroupItems(3).Name
--> Fonctionne
Code:
Msgbox = Me.Shapes("Feu1").GroupItems.Item("Rouge").Name
--> Fonctionne pas et retourne l'erreur 5
Est il possible de désigner le rectangle par son nom comme pour le feu ?
Je souhaite éviter ce type de code :
Code:
1 2 3
| For i=1 to Me.Shapes("Feu1").GroupItems.Count
If Me.Shapes.GroupItems(i).Name = "Rouge" Then '...
Next |
Je n'y comprend plus rien, ça doit être simple mais pourtant je n'y arrive pas !!!8O
J'ai grand besoin d'aide et je remercie par avance les personne pouvant me faire progresser.:king:
Vincent.