[VBA]- Doublons dans une collection

Pierwak

XLDnaute Occasionnel
Bonjour a toutes et a tous... Je souhaite obtenir dans une collection toutes les valeurs d'un code de tri utilisé dans ma base, mais sans doublons. Pour l'instant j'utilise le code suivant

Code:
For i = 7 To L
    If base_conso.Cells(i, 5) <> base_conso.Cells((i - 1), 5) Then
    tab5.Add base_conso.Cells(i, 5)
    End If
Next i

Mais je récupérè plusieurs fois les valeurs. En fait il faudrait pouvoir rajouter un "And" sur le If pour dire de ne pas ajouter la valeur si elle est déja dans la collection. Quelqu'un sait faire ?

D'avance merci de l'aide que vous pourrez m'apporter sur ce problème.
Cdlt
Pierwak
 
C

Compte Supprimé 979

Guest
Re : [VBA]- Doublons dans une collection

Salut Pierwak,

Une collection est justement fait pour ne pas avoir de doublons :confused:

Dans ton code, il faut ajouter une clé en plus de la valeur pour ne pas en avoir
Code:
For i = 7 To L
  On Error Resume Next
  tab5.Add base_conso.Cells(i, 5)[B][COLOR=blue], base_conso.Cells(i, 5)[/COLOR][/B]
  On Error Goto 0
Next i

Voili, voilà ;)
 

Pierwak

XLDnaute Occasionnel
Re : [VBA]- Doublons dans une collection

Salut Bruno, merci de te pencher sur ce problème. J'ai essayé avec ton code mais avec lui je ne récupère aucune valeur, ma collection est vide (tab5.count=0). Aurait tu un complément d'information a me fournir ??

D'avance merci !
 

porcinet82

XLDnaute Barbatruc
Re : [VBA]- Doublons dans une collection

Salut Pierwak, Bruno :),

Je viens de tester le code que t'as proposé Bruno et chez moi ca fonctionne. Le code exact que j'ai utiliser pour tester est le suivant :
Code:
Sub test()
Dim i%
Dim tab5 As New Collection
For i = 1 To 10
  On Error Resume Next
  tab5.Add Cells(i, 1), Cells(i, 1)
  On Error GoTo 0
Next i
End Sub

@+
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof