Combobox : ne pas afficher cellule vide [Résolu/Fermé]

Signaler
Messages postés
23
Date d'inscription
dimanche 1 avril 2007
Statut
Membre
Dernière intervention
20 mai 2008
-
 Ghostk -
Bonjour,
J'ai créé une combobox avec une rowsource renseignée : liste!B2:B399.
Certaines cellules de la plage de la feuille liste ne sont pas renseignées (vide). Dans mon combobox, les vides apparaissent donc entre certaines valeurs.
Est-il possible de ne pas faire apparaître les cellules vides dans la Combobox ?
Merci d'avance de votre réponse
Cordialement
Linette

1 réponse

Messages postés
23
Date d'inscription
dimanche 1 avril 2007
Statut
Membre
Dernière intervention
20 mai 2008
3
Bonjour,
Je cherche toujours une solution.
J'ai compris que si je choisis de renseigner la liste dans ROWSOURCE, je ne peux rien faire.
J'ai donc trouver un code (voir ci-dessous) que j'ai saisi qui me permets de renseigner la liste déroulante de ma combobox mais je n'ai pas trouvé comment supprimer les lignes vides de ma liste déroulante.

Private Sub UserForm_Initialize()
With Sheets("Liste")
ComboBox4.List = .Range("b2:b" & .Range("A65536").End(xlUp).Row).Value
End With
End Sub

Quelqu'un a-t-il une solution ?

Linette
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
23
Date d'inscription
dimanche 1 avril 2007
Statut
Membre
Dernière intervention
20 mai 2008
3
Pour les personnes intéressées, voici un code qui fonctionne parfaitement

Private Sub UserForm_Initialize()
Dim lf As Long 'déclare la variable lf (Ligne de Fin)
Sheets("Liste").Select
lf = Range("B65536").End(xlUp).Row 'définit la variable lf
ComboBox4.Clear 'vide la ComboBox1
'remplit la ComboBox4
For Each cel In Range("B2:B" & lf) 'boucle sur toutes les cellule de A1 à A_lf
'condition : si la cellule n'est pas vide ajoute son contenu à la ComboBox1
If cel.Value <> "" Then ComboBox4.AddItem cel.Value
Next cel 'prochaine cellule
End Sub
Ce code m'a bien servi, il marche parfaitement : Merci !

GK