|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : décembre 2012 Messages : 4 ![]() |
Bonjour.
J'ai un formulaire (il s'appelle Userform1), qui liste les onglets présents dans le classeur et affiche une listbox qui permet de choisir soit tous les onglets soit un seul. Ca donne ca Code :
Ce code fonctionne très bien (notez pour les puristes que j'aurais pu créer une liste d'exceptions et utiliser un find, mais à l'époque ou je l'ai écrit je ne connaissais pas, et comme ca marche...) Mais maintenant j'ai besoin de l'améliorer et d'en faire, au lieu d'une liste défilante, une liste de checkbox A savoir - une checkbox TOUS - autant de checkbox que d'onglets hors exceptions - une commande sur les clicks qui dit que quand je coche tous je décoche toutes les autres et quand je clique une des entités, si TOUS est coché, il se décoche j'ai cherché, mais la fonction qui me permettra de créer des checkbox en nombre variable dans un userform devient un niveau de vba qui dépasse un peu mes performances d'autodidacte Si une bonne ame s'égare sur cette discussion... Merci d'avance |
||
|
|
00
|
|
|
#2 | |||||||
|
Membre éprouvé
![]() Inscription : décembre 2012 Messages : 299 ![]() |
Citation:
Au préalable salut! Pour te prendre au mot créer des contrôles pendant l'éxécution nécessite que tu aprennes à bien connaître tes contrôles. Pas besoin de naviguer pour ça. L'aide installée avec l'application est largement instructif sur les propriétés et méthodes de chaque contrôle ou collection d'objets. Si tu veux vraiment t'embarquer il faut que tu t'entraînes à fouiner dans l'aide fournie. Bon si tu veux des bouts de codes à coller ou adapter à tes besoins commençons: Crée un userform et plantes-y en mode design 2 ToggleButton + 1 Listbox. Lances le code. Clic sur Listbox1, puis 1 toglebutton et clic sur la listbox. Code :
Cela suppose que tu dois avoir un cadre frame si tu veux mis en forme pour ne pas être distingué sur la feuille. la propriété visible, afin de grouper tes nouveaux contrôles. Avoir un code d'évènement déjà écrit pour gérer les nouveaux venus. Le contener Frame gère les évènements tels que le click comme tous les contrôles. Une boucle pour balayer les chekbox présents afin d'identifier celui qui a la valeur True. Je ne ferais ce code à ta place. Pourquoi? Parce qu'il faut bien que tu apprennes. et parce que je nai pas que ça à faire. le plus gros c'est de te montrer les techniques: 'Un contrôle à son ajout dans un Userform, l'évènement suivant se déclenche Code :
le code est en deux parties dont l'une est en commentaires. quand tu auras suffisamment manipulé une portion, tu le mets en commentaires. exécution pas à pas avec F8. Dans la barre des taches de Windows clic pour afficher les fenêtres côte à côte et observer l'action de chaque ligne de code sur la feuille. Code :
|
|||||||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2012 Messages : 4 ![]() |
Oulalah, que j'ai hate d'être à demain pour essayer tout ça
Merci , c'est vraiment super sympa d'avoir passé du temps à me filer tout ça. j'ai énormément de mal avec l'aide embarquée d'excel, je la trouve pas ergonomique du toutBon, vivement demain. Je reviendrai sur la discussion pour confirmer que je m'en suis sorti! |
|
|
00
|
|
|
#4 | |||
|
Invité de passage
![]() Inscription : décembre 2012 Messages : 4 ![]() |
Merci, en fait tu as allé beaucoup plus loin que mes humbles besoins
Je n'ai utilisé que ton premier code-exo (un peu buggué, au passage, mais rien de grave) J'aboutis donc très rapidement à Code :
Avec cela, plus besoin d'envisager un ajout dynamique de checkbox, puisque la listbox me les donnes, impecc! Par contre, là ou je suis à la peine, c'est sur le listbox1_change, pour aboutir sur le sujet Citation:
- fmMultiSelectMulti rend le listbox_click inopérant - il faut que je trouve un moyen de désactiver les _click et _change de mon formulaire quand je l'initialise (pour des raisons encore obscures Application.EnableEvents =false est inopérant) sinon ca met le boxon - en lien avec le point ci-dessus, pour atteindre mon but, il faut aussi que je trouve à ne pas faire du _change récursif dans mon listbox1_change tout ca est lié, je trouverai Merci encore en tout cas! |
|||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com