VBA-Excel Une boucle pour remplir une combobox

Résolu/Fermé
Bapt00 Messages postés 6 Date d'inscription samedi 16 août 2008 Statut Membre Dernière intervention 1 mars 2016 - 1 mars 2016 à 10:51
Bapt00 Messages postés 6 Date d'inscription samedi 16 août 2008 Statut Membre Dernière intervention 1 mars 2016 - 1 mars 2016 à 13:27
Bonjour à tous

J'ai besoin de pouvoir remplir une combobox (box_ville)dans un formulaire (form_ajout) avec une plage de cellule provenant d'une feuille de calcul(Feuil1). Voilà le code que j'ai écrit dans le UserForm:

Private Sub form_ajout_Initialize()

Dim i As Integer
i = 1
Do While Worksheets("Feuil1").Cells <> 0
box_ville.AddItem Sheets("Feuil1").Cells(i, 1)
i = i + 1
Loop
End Sub

Quand j'initialise le formulaire, rien ne se passe dans la combobox concernée.
Le problème semble venir de l'affichage puisque la boucle suivante fonctionne très bien quand je la code dans un autre module et que je l'exécute:

Private Sub testboucle()

Dim i As Integer
i = 1
Do While Worksheets("Feuil1").Cells(i, 1) <> 0
MsgBox Worksheets("Feuil1").Cells(i, 1).Value
i = i + 1
Loop
End Sub

Voilà, si quelqu'un pouvait me venir en aide, cela m'aiderait grandement. Je précise que je débute et que ceci est pour le premier système que je crée seul.
Autre chose, je travaille avec excel 2011 mac, donc inutile d'évoquer la propriété RowSource.

Merci d'avance




3 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
Modifié par cs_Le Pivert le 1/03/2016 à 12:05
Bonjour,

comme ceci:

Private Sub UserForm_Initialize()
Dim i As Integer
i = 1
Do While Worksheets("Feuil1").Cells(i, 1) <> 0
box_ville.AddItem Sheets("Feuil1").Cells(i, 1)
i = i + 1
Loop
box_ville.ListIndex = 0
End Sub


@+ Le Pivert
1
Bapt00 Messages postés 6 Date d'inscription samedi 16 août 2008 Statut Membre Dernière intervention 1 mars 2016
1 mars 2016 à 13:24
Merci de ton aide.
0