Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

(Misange) Combobox alimenté avec une extraction sans doublons

1 réponse
Avatar
NicolasB
Bonjour au forum

J'ai trouv=E9 sur le site de misange ce code qui me convient=20
pour alimenter un combox box avec une extraction d'une=20
colonne sans doublons

le pb qui se pose c'est qu'excel ne conna=EEt pas=20
Scripting.Dictionary

Si quelqu'un pouver m'aider???

exemple du code:
Private Sub UserForm_Initialize()
Dim Table As Scripting.dictionary
Dim i&, j&, Valide As Boolean, A As Variant

Set Table =3D New Scripting.dictionary
j =3D 0

With Sheets("DDR")
For Each A In .Range("C10:C2000")
Valide =3D True
If IsError(A) Then
Valide =3D False
ElseIf Len(A) =3D 0 Then
Valide =3D False
ElseIf Table.exists(A.Value) Then
Valide =3D False
End If
If Valide Then Table.Add A.Value, j: j =3D j + 1
Next
End With

For i =3D 0 To Table.Count - 1
Debug.Print Table.Keys(i)
mine.AddItem (Table.Keys(i))
Next i
Set Table =3D Nothing
End Sub

1 réponse

Avatar
Clément Marcotte
Cocher la référence à Microsoft Scripting Runtime dans Outils -
Références.


"NicolasB" a écrit dans le
message de news:347501c4a5ea$f3264b80$
Bonjour au forum

J'ai trouvé sur le site de misange ce code qui me convient
pour alimenter un combox box avec une extraction d'une
colonne sans doublons

le pb qui se pose c'est qu'excel ne connaît pas
Scripting.Dictionary

Si quelqu'un pouver m'aider???

exemple du code:
Private Sub UserForm_Initialize()
Dim Table As Scripting.dictionary
Dim i&, j&, Valide As Boolean, A As Variant

Set Table = New Scripting.dictionary
j = 0

With Sheets("DDR")
For Each A In .Range("C10:C2000")
Valide = True
If IsError(A) Then
Valide = False
ElseIf Len(A) = 0 Then
Valide = False
ElseIf Table.exists(A.Value) Then
Valide = False
End If
If Valide Then Table.Add A.Value, j: j = j + 1
Next
End With

For i = 0 To Table.Count - 1
Debug.Print Table.Keys(i)
mine.AddItem (Table.Keys(i))
Next i
Set Table = Nothing
End Sub