Exécuter multi-sélection d'un ListBox1
Excel 2007 VBA
Je souhaiterai svp a la suite de multi sélection dans un listbox1 éxécuter une ou plusieurs macros
je vous joint un petit fichier avec mes explications a l'intérieur bien plus simple qu'un long discours
avec tous mes remerciements pour votre aide
Cordialement raymond
Lien du fichier http://cjoint.com/?3AtqNXcFFzl
http://www.cjoint.com/?3AtqNXcFFzl
29 réponses
Exécuter des macros après une sélection multiple dans un ListBox sous Excel 2007 (VBA), dans un contexte Windows 7 et IE9 et interactions utilisateur complexes. Plusieurs intervenants préconisent un bouton de validation et l'itération des éléments sélectionnés pour lancer des macros, en précisant que l'ordre d'exécution peut être crucial dans certains cas. D'autres proposent des approches sans tests de sélection/désélection, par exemple en reconstruisant la liste à chaque clic ou en utilisant des boutons dédiés pour réinitialiser et valider. Plusieurs réponses détaillent un mapping entre chaque élément et une macro (Cas 1 à Cas 8), et évoquent des considérations de gestion d'erreurs et d'images associées, des liens vers des ressources ont été partagés.
-
Bonjour,
Le lancement de ou des macro doit se faire des la selection ou avec un bouton validation liste. L'ordre d'execution des macros est vraiment capital, parce cela va compliquer pas mal le code, du fait qu'il faudra gerer aussi selection/deselection en cours de selection d'un item selectionne -
Bonjour f894009
Merci pour ta réponse
Je pensais d'abord faire ma selection soit une ou plusieurs, afficher dans le Label1 puis une fois la selection terminée "Valider" en cliquant sur le Label1
et les macros devrai s'éxécuter les unes après les autres ou bien ensemble
alors ensemble ça je ne sais pas jamais essayer
Merci pour ton aide
bon début de semaine a toi
Ray -
Re,
une approche de la chose sans les tests select/deselect, un bouton RAZ selection pour modif selection, un bouton valide selection pour lancer les macros.
https://www.cjoint.com/?DAujnlUlkCQ
A+ -
Re,
Merci pour le fichier et pour le code
Pas trop compris ce que tu me dit ci-dessous
une approche de la chose sans les tests select/deselect
sinon dans l'immédiat ca fonctionne bien
juste un petit truc
j'ai simuler la date du premier février 2014 j'ai lancer le programme
le fond du ListBox1 est bien passer en Vert ça c'est Ok
Mais dès ma première selection (premier clic) le fond repasse de suite en Rouge
j'aurai préferer svp que le ListBox1 reste en Vert jusqu'a ce que je clic sur "Validation" et qu'a ce moment, le fond du ListBox repasse en Rouge
Merci beaucoup pour ton aide
Cdlt Raymond -
Re,
une approche de la chose sans les tests select/deselect Oui, si vous changez de selection sans faire de RAZ, l'affichage et les macros a lancer ne seront plus vrai -
Re,
Bien recu la réponse merci bien.
Tu peux svp faire effectuer les tests dont tu me parle car effectivement cela risque d'etre bien embetant.
Quand tu a le temps rien ne presse.
je n'avais pas penser a ça, bien vu.
Merci a plus tard
Ray -
Bonsoir f894009
une question svp:
Serez t'il possible de faire fonctionner le programme sans le label1
juste uniquement a partir de la ListBox1 et un bouton valider
c'est a dire directement:
Ex: je fais une ou plusieurs selections
puis "Valider" et hop éxécution des macros selectionnées
Merci pour ton aide et bonne soirée a toi
Cdlt Ray -
Re,
C'est ce que je voulais vous propose, mais vous n'avez pas repondu a la question: l'ordre des macros est-il imperatif ???? -
Bonjour f894009,
Merci bien pour la réponse,
Je suis désolé a propos de ta proposition, j'étais rester fixé sur mon idée, et a l'utilisation hier je me suis dit que je pourrai dans un gain de place me dispenser du Label et au moins d'un bouton
Mais si la une possibilité de faire fonctionner le programme sans le Label1
juste uniquement a partir de la ListBox1 et mème voir sans bouton "Valider"
je suis Ok pour ça.
Pour les macros OUI dans l'ordre croissant Ex:
Si je coche 1 - 3 - 5 - 6 l'ordre d'éxécution est 1 - 3 - 5 - 6
Si on fait du coup par coup Ex
je coche (3) on éxécute la macro, je coche (1) on éxécute la macro etc etc
Mais si je me trompe de N° la macro va s'éxecuter
Mais je ne pense pas que l'on puisse faire marche arrrière en cas d'erreur ????
Merci pour ton aide et encore désolé pour l'oubli de la réponse
Je te souhaite une agréable journée
Cdlt Raymond -
Bonjour,
je regarde cela demain.
A+ -
Bonsoir f894009,
Ok t'inquiète pas, suis pas pressé, prends ton temps
Merci tout de mème c'est gentil, bonne soirée a toi
Cordialement Raymond -
Bonjour f894009
Je viens aux nouvelles pour savoir si tu a pu trouver quelque chose pour mon petit programme
J'ai penser cette semaine que si ce n'ai pas possible avec un ListBox peut etre une possiblité plus souple avec un Listview
je dit ça car j'ai fait de multiples essais et je n'arrive pas a progresser tout seul
malgré beaucoup de recherche
Sinon tu laisse tomber je ne t'en voudrai pas je cherche quand mème
Bon W-end a toi et merci
Cordialement Ray -
Bonjour,
Pas eu de temps pour chercher, je regarde cela cette apres-midi. Par curiosite, pourquoi l'ordre des macros est-il si important ?????? -
Salut
J'ai oublier de te dire que j'ai remanier quelque peut mon programme de compta
et comme tu m'avais dit cela compliquerai le code alors du coup plus d'ordre spécifique
Dans mes dernières recherches la Listview revient souvent car serai plus facile a utiliser avec plus de possiblilté
donc si cela t'arrange je suis ok pour une listview également
Merci pour ton aide
Cdlt Ray -
Re,
Avec un minimum de reflexion, vu que pas d'imperatif d'ordre:
pas besoin de listview
principe: refaire la liste a chaque clic sur listbox
validation par bouton
https://www.cjoint.com/?DAzoOh3N2Jf
A+ -
Re
Merci pour le fichier, ça fonctionne donc on peux optimiser ton code afin qu'il ne me reste plus que la listbox et un bouton de validation
le reste ne sert plus car c'etait pour les essais
Cdlt Ray -
-
Re f894009,
Merci tout cela fonctionne, j'ai integré a mon programme de compta et
les macros s'éxecutent bien
Pour ça je te remercie beaucoup
PS: merci également pour le fond d'écran ihihihih
Une question svp et seulement si ça te tente et que tu a du temps, j'aurai bien voulu refaire le mème code mais avec une Listview cette fois.
Avec la Listbox on ne peux pas changer la couleur des (Items) des lignes facilement, soit c'est toute la liste ou rien.
Mon but avec une listview
(1) Une seule colonne, Sans entète, Couleur de fond Fixe, Les checkboxs a cocher bien sur, Ascenseur a droite pour la liste.
(2) les lignes (Items) sélectionnées passent en Vert, les lignes (Items) qui ne sont pas sélectionnées reste en Rouge.
En tout cas merci bien pour le code et pour ton aide.
Cdlt Raymond -
Re,
C'est jouable. Je regarde la chose. -
- 1
- 2