série de listbox à remplir

estelle.s

XLDnaute Junior
Bonjour.

Je vous demande un coup de main. Il m'est arrivée de faire qqs petites macros ci et là, je ne suis dc pas tt à fait novice (un peu qd meme...) en vba mais je ne parviens pas à résoudre le pb suivant :

J'ai un fichier excel qui se présente ainsi. Une premiere feuille qui doit porter le nom d'une personne : feuille "nom". Dans cette feuille apparaissent des noms de domaines auxquels je voudrais associer directement des numéros références. à partir de la ligne 16 je voudrais réaliser des listbox pour le choix du domaine. les numéros associés sont écris sur une feuille à part (feuille "n° projet").
Ce que je souhaite faire : parcourir cette liste à chaque clic sur nouveau. La stocker ds un tableau. Puis créer autant de listbox que de projets ainsi répertoriés sur la feuille "nom".Chaque listbox fera la taille d'une cellule de la colonne 1 et comprendra comme item tous les noms possibles .

Je suis parvenue à créer mes listbox sans soucis et bien en fonction de mon tableau de projets-numéros. Mais je ne parviens pas à les remplir. J'ai tenté de déplacer ma propriété list, une fois dans ma boucle une fois en dehors. Rien a faire. Apres test simplifié avec une seule listbox je n'y parviens pas non plus. J'ai essayé avec une méthode oleobject et ensuite shapes. Rien a faire non plus.

Bref j'ai toujours l'une des erreurs suivantes : objet requis, ou propriété ou méthode non gérée par l'objet.
Je pense qu'il s'agit d'un pb de référence pour l'appel de mes listbox qd je les remplis, mais comment m'en sortir ???

Je vous joins la derniere tentative que j'ai essayé. Sachant que pour test je me suis concentrée sur le remplissage d'une seule listbox pour commencer.

Merci à vous. dsl pr la longueur je voulais tenter d'être claire ... :$
 

Pièces jointes

  • prog_essai.zip
    16.3 KB · Affichages: 30
  • prog_essai.zip
    16.3 KB · Affichages: 28
  • prog_essai.zip
    16.3 KB · Affichages: 31

estelle.s

XLDnaute Junior
Re : série de listbox à remplir

Merci pour votre aide pierrejean et hasco.

En effet hasco apres avoir vu ta solution en combobox cela me parait plus approprié à ce que je veux faire. Par contre j'ai tout de même 2 questions pour vous :(chacun une ;) )

- hasco : pourquoi tu utilises cette ligne de code :
oListe.ListFillRange = "'n° projets'!" & plg.Address
J'ai regardé dans l'aide ce que faisait l'instruction adress et pourtant je ne comprends pas ta syntaxe. c'est bien ac cette ligne que tu remplis la liste n'est ce pas ?

-pierrejean: la aussi question de syntaxe : dans la ligne
Worksheets(1).OLEObjects("ListBox" & n).ListFillRange = "=Liste"
d'où tires tu le liste ??? je ne vois pas bien à quoi il se rapporte, même en essayant de suivre la ligne en pas à pas.

En tout cas un grand merci. Vos 2 codes fonctionnent parfaitement pour ce que je veux. J'aimerai juste savoir pourquoi ;)
 

pierrejean

XLDnaute Barbatruc
Re : série de listbox à remplir

Re

Liste est le nom que j'ai attribué a la plage A2:A10 de la feuille n° projets

par contre chez moi les combobox de Hasco (mes amitiés :) ) ne se remplissent pas (version 2000 !!)

ps: on peut egalement attribuer un nom a la plage par Vba
de même il est surement plus elegant de noter la propriété ListFillRange dans la boucle de création
 
G

Guest

Guest
Re : série de listbox à remplir

Estelle,

oListe.ListFillRange = "'n° projets'!" & plg.Address

Oui c'est avec cela que sont remplies les comBoBox.
La propriété ListFillrange demande une chaine de caractère, qui représente la source des données.
La Propriété Address de l'objet Range (ici plg) renvoie l'adresse des cellules sous forme absolue :"$A$1:$B$10000" par exemple.

plg.Address(False,False) ou plg.Address(0,0) renverra la même adresse de cellule sans les '$'

Comme cette propriété ne renvoie pas le nom de la feuille à laquelle appratient la plage de cellule, il faut le rajouter explicitement.

en espérant que cela sera plus clair pour toi, à bientôt.

@PierreJean: Amitiés:)
 

estelle.s

XLDnaute Junior
Re : série de listbox à remplir

Merci beaucoup à tous les 2.

Me voilà avec quelques notions de plus en vba ;)
Ce matin je poursuis enfin ma macro, et ce grâce à vous qui m'avez débolquée et expliquée !!

Bonne journée et encore une fois merci.
 

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 023
Messages
2 084 713
Membres
102 637
dernier inscrit
TOTO33000