VBA remplir ComboBox
tut
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J'ai une feuille excel et j'y ai mis nue comboBox
Je voudrais initialiser la comboBox et lui rentrer la liste des chiffres de 1 à 5
Je sais le faire avec une userForm :
UserForm_initialize
For i=1 to 5
ComboBox1.addItem i
Next i
End sub
Le problème c'est que comme je suis dans une feuille excel et pas dans la userform, je n'arrives pas à trouver comment doit s'appler ma procédure.
Merci d'avance pour votre aide!
J'ai une feuille excel et j'y ai mis nue comboBox
Je voudrais initialiser la comboBox et lui rentrer la liste des chiffres de 1 à 5
Je sais le faire avec une userForm :
UserForm_initialize
For i=1 to 5
ComboBox1.addItem i
Next i
End sub
Le problème c'est que comme je suis dans une feuille excel et pas dans la userform, je n'arrives pas à trouver comment doit s'appler ma procédure.
Merci d'avance pour votre aide!
A voir également:
- VBA remplir ComboBox
- Organigramme a remplir word - Guide
- Excel compter cellule couleur sans vba - Guide
- Comment remplir un document pdf - Guide
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
1 réponse
Bonjour,
Si ta ComboBox a bien été créée via la barre d'outils "boîte à outils contrôles", tu peux créer ta procédure dans l'évènement de WorkSheet "Activate". Le code serait :
cela te permet de compléter la ComboBox à l'activation de ta feuille.
Le petit souci est qu'à l'ouverture du classeur, si ta Combo est dans la feuille "d'ouverture", elle ne se remplira pas. Deux solutions :
- soit l'utilisateur change de feuille et reviens sur celle-ci,
- soit tu le fais automatiquement, en mettant une procédure à l'ouverture du classeur (évènement WorkBooks_Open) comme ceci :
N'hésite pas à revenir en cas de souci.
Si ta ComboBox a bien été créée via la barre d'outils "boîte à outils contrôles", tu peux créer ta procédure dans l'évènement de WorkSheet "Activate". Le code serait :
Private Sub Worksheet_Activate() Dim i As Integer ComboBox1.Clear 'vide la ComboBox For i = 1 To 5 ComboBox1.AddItem i 'remplit la Combo Next End Sub
cela te permet de compléter la ComboBox à l'activation de ta feuille.
Le petit souci est qu'à l'ouverture du classeur, si ta Combo est dans la feuille "d'ouverture", elle ne se remplira pas. Deux solutions :
- soit l'utilisateur change de feuille et reviens sur celle-ci,
- soit tu le fais automatiquement, en mettant une procédure à l'ouverture du classeur (évènement WorkBooks_Open) comme ceci :
Private Sub Workbook_Open() Sheets("Feuil2").Activate Sheets("Feuil1").Activate End Sub
N'hésite pas à revenir en cas de souci.