Liste deroulante: regrouper noms

plx4ever Messages postés 6 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 22 avril 2005 - 27 oct. 2003 à 09:42
cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 - 27 oct. 2003 à 18:29
Bonjour à tous !
Je suis sous Excel et je fais une liste deroulante qui comporte les noms stockés dans une colonne. J'ai dans cette colonne plusieurs fois le meme nom. Est-ce possible de n'afficher une seule fois les mêmes noms: de les regrouper?
Une macro je peut pas m'aider?
Merci d'avance,
Paul

1 réponse

cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 2
27 oct. 2003 à 18:29
Crée une fonction qui vérifie si le nom que tu veux ajouter à ta liste déroulante exite ou non.

Function AbsentDansListe(LeNom As String) As Boolean
Dim i As Integer
'Met le nom en majuscule pour ne pas être embêté par des "JEAN", "Jean", "jean"
LeNom=UCase(LeNom)
'Par défaut, considère que le nom existe déjà
AbsentDansListe = True
'Passe en revue les noms déjà dans la liste
For i = 0 To MaListe.ListCount -1
'Si le nom est déjà dans la liste...
If UCase(MaListe.List(i))=LeNom Then
'...la fonction prend la valeur VRAI
AbsentDansListe = False
'...puis quitte la fonction
Exit Function
End If
Next

Ainsi dans le code de remplissage de ta liste, tu pourras tester le nom avant de l'ajouter à la liste

If AbsentDansListe(MaFeuille.Range("A2").Text) Then MaListe.AddItem MaFeuille.Range("A2").Text
End Function

Programmix
0
Rejoignez-nous