• Initiateur de la discussion Initiateur de la discussion waspy59
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

W

waspy59

Guest
bonsoir,

j'ai a nouveau un tit probleme avec excel et vba...pour pas changer 🙂

j'ai une form avec une listbox, et je souhaiterai au lancement de la form depuis excel afficher dans cette listbox le contenu d'une colonne.
Mais pour compliquer le chose, dans cette colonne (code medecin) de 40000 lignes, on a bcp de répetition (environ 30 données differentes)... or je souhaiterai afficher une seule fois c données (donc 30 choix dans la listbox)

comment qu'on fait? 🙁
 
re waspy59,

Il me semble qu'on se croise assez souvent ces temps ci 😉

J'en profite pendant la mi-temps pour essayer de filer quelques coup de mains, et en lisant ton post, je me suis dis, ca c'est un truc pour Hervé, un coup de tableau et c'est réglé. Donc une petite recherche sur le new forum et te voici quelques lien ou tu devrais ton bonheur






@+
 
Bonsoir Waspy, porcinet82 mes hommages

Trouver ici pour listbox ...col A sans doublons ...nom de la feuille ...Feuil1


Option Explicit 'oblige à déclarer toutes les variables

Private Sub UserForm_Initialize() 'à l'intilisation de l'UserForm

Dim Collec As Collection 'déclare la variable Collec
Dim cel As Range 'déclare la variable cel
Dim x As Integer 'déclare la variable x

Set Collec = New Collection 'définit la variable Collec

'ajout de membres (sans doublons) à la collection Collec
'boucle sur toutes les cellules éditée de la colonne A de l'onglet 'Feuil1'
For Each cel In Sheets('Feuil1').Range('A1:A' & Sheets('Feuil1').Range('A65536').End(xlUp).Row)
On Error Resume Next 'passe à la ligne suivante si erreur
'ajoute la valeur de la cellule comme nouveau membre de la collection Collec
'la clé 'Ctsr(Cel.value)' provoque une erreur si le membre existe déja
Collec.Add cel.Value, CStr(cel.Value)
Next cel 'prochaine celluole de la boucle

'remplissage de la ListBox1
'boucle sur tous les membres de la collection Collec
For x = 1 To Collec.Count
'ajoute la valeur du membre à la ListboxBox1
ListBox1.AddItem Collec(x)
Next x 'prochain membre de la collection

End Sub

A+

Temjeh


Message édité par: temjeh, à: 24/06/2006 00:23

Message édité par: temjeh, à: 27/06/2006 02:43
 
Bonjour Temjeh, bonjour le forum,

Merci pour ton code qui va également me servir mais néanmoins, mes besoins vont corser un peu les choses, quel code faudrait-il mettre pour obtenir la même chose mais avec une liste affichant 3 colonnes avec en-tête ?

Merci à tous
 
Bonjour tout le monde, 🙂

Waspy59, tu peux aller voir sur ce lien aussi, très interessant, avec une approche originale de la chose et l'aspect nombreuses données traité, étant un ancien fil, les exemples doivent pouvoir être récupérés 😉 , notre ami Thierry 😉 y fait des siennes...

Lien supprimé

Bon WE,
 
Bonjour a tous,

Pour mes liens, c'est que je les aient trouvé sur le nouveau forum qui est actuellement en test mais qui permet quand même de faire des super recherche.
Donc les le login est test et le password est test

Voili, voilou,

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
987
Retour