ComboBox

ComboBox - VB/VBA/VBS - Programmation

Marsh Posté le 07-07-2004 à 21:49:59    

Bonjour,
Je suis sous Excel 2000 et je voudrais faire une ComboBox ...
Et je n'arrive pas à remplir ma omboBox avant l'exécution de ma macro ...
Si quelqu'un pouvait m'aider merci  :wahoo:

Reply

Marsh Posté le 07-07-2004 à 21:49:59   

Reply

Marsh Posté le 08-07-2004 à 08:00:47    

2 solutions:
1- soit la combo est remplie par un "range", c.a.d. sa propriété ListFillRange correspond à une plage de la feuille (ex: G12:G24). Les valeurs des cases s'affichent dans la combo.
 
2- par programmation, avec la méthode additem
txtCombo.AddItem "Titi"
txtCombo.AddItem "Tata"
....

Reply

Marsh Posté le 08-07-2004 à 09:16:40    

Oui c'est la 2ème méthode que je voudrais utiliser ...
Mais j'ai essayé :

Code :
  1. Private Sub ComboBox1_Click()
  2.    
  3. ComboBox1.AddItem "toto"
  4.    
  5. End Sub


 
et ca ne change rien ...
alors je sais pas si le AddItem doit se faire dans cette routine ...
sincerement je ne sais pas ou le mettre ce AddItem parce que je me dis que si je le mets dans une routine cette partie de script ne sera valide qu'une fois la macro exécuté alors que je veux que ca marche dès que mon Excel est ouvert ...
voili voilou j'espère avoir été clair ... si quelqu'un pouvait m'aider je l'en remercie par avance

Reply

Marsh Posté le 08-07-2004 à 09:19:50    

Non, tu ne peux pas mettre ça dans l'évènement Combo_Click. Mets le plutôt dans l'ouverture WorkBook. (Workbook_Open)

Reply

Marsh Posté le 08-07-2004 à 09:30:34    

J'ai essayé de mettre cette procédure toute simple ;

Code :
  1. Private Sub Workbook_Open()
  2. ComboBox1.AddItem "toto"
  3. End Sub


dans la feuille ThisWorkbook mais j'ai une erreur d'éxécution '424' : Objet requis :'(

Reply

Marsh Posté le 08-07-2004 à 09:40:06    

Oui. Il faut lui dire dans quelle feuille se trouve la Combo. Ex:
Feuil1.ComboBox1.AddItem "Toto"

Reply

Marsh Posté le 08-07-2004 à 09:42:20    

Oui je viens juste de m'en apercevoir merci pour ton aide ...
j'aurai une autre petite question :
j'ai ajouté : ComboBox1.Style = 2 pour être en liste non modifiable.
et je voudrais que dans ma ComboBox au démarrage soit affiché le 1er élément de la liste et non quelque chose de vide
Merci

Reply

Marsh Posté le 08-07-2004 à 10:10:50    

Feuil1.ComboBox1.Text = Feuil1.ComboBox1.List(0)

Reply

Marsh Posté le 08-07-2004 à 10:36:52    

Merci :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed