Bonjour a tous
J'ai beau chercher dans tous les tutoriaux et forums, mais bien qu'il y ait beaucoup de questions similaires, je n'arrive pas à débloquer mon pb
J'ai une combobox qui s'incémente à partire d'une autre combobox et je voudrais supprimer les doublons dans la derniere.
Private Sub CB_localisation_Enter()
Dim vVariable As String
Dim NoDupes As New Collection
Dim I As Integer, j As Integer
Dim Swap1, Swap2, Item
Dim iEx As String
Sheets("Réseaux").Select
'on initiale la combo
CB_localisation.Clear
'on récupère le contenu de la première combo
vVar = CB_OP.Value
'on remplit la seconde combo en se servant de la valeur de la première comme filtre
' Trie la collection (optionnel)
For I = 1 To NoDupes.Count - 1
For j = I + 1 To NoDupes.Count
If NoDupes(I) > NoDupes(j) Then
Swap1 = NoDupes(I)
Swap2 = NoDupes(j)
NoDupes.Add Swap1, before:=j
NoDupes.Add Swap2, before:=I
NoDupes.Remove I + 1
NoDupes.Remove j + 1
End If
Next j
Next I
For Each c In Range("B2", Range("B2").End(xlDown).Address)
If c.Offset(0, -1).Value = vVar Then
CB_localisation.AddItem c.Value
End If
Next
End Sub
J'ai beau chercher dans tous les tutoriaux et forums, mais bien qu'il y ait beaucoup de questions similaires, je n'arrive pas à débloquer mon pb
J'ai une combobox qui s'incémente à partire d'une autre combobox et je voudrais supprimer les doublons dans la derniere.
Private Sub CB_localisation_Enter()
Dim vVariable As String
Dim NoDupes As New Collection
Dim I As Integer, j As Integer
Dim Swap1, Swap2, Item
Dim iEx As String
Sheets("Réseaux").Select
'on initiale la combo
CB_localisation.Clear
'on récupère le contenu de la première combo
vVar = CB_OP.Value
'on remplit la seconde combo en se servant de la valeur de la première comme filtre
' Trie la collection (optionnel)
For I = 1 To NoDupes.Count - 1
For j = I + 1 To NoDupes.Count
If NoDupes(I) > NoDupes(j) Then
Swap1 = NoDupes(I)
Swap2 = NoDupes(j)
NoDupes.Add Swap1, before:=j
NoDupes.Add Swap2, before:=I
NoDupes.Remove I + 1
NoDupes.Remove j + 1
End If
Next j
Next I
For Each c In Range("B2", Range("B2").End(xlDown).Address)
If c.Offset(0, -1).Value = vVar Then
CB_localisation.AddItem c.Value
End If
Next
End Sub