Bonsoir a tous et bravo pour le travail accompli par tous

Je débute en programmation et vous vous voudrez bien m'excuser si toute fois j'ai du mal a me faire comprendre .

Venons en au fait :

Mon premier essai :

J'ai créer un userform avec un bouton qui rempli un combobox .La pas de probleme , ca fonctionne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
Sub CommandButton1_Click()
 
Dim j As Integer
Dim i As Integer
Dim strtemp As String
 
For j = 2 To Range("B65536").End(xlUp).Row      'Récupère les données de la colonne B...
ComboBox1 = Range("B" & j)
 
If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("B" & j)
Next j
 
With ComboBox1                       'tri par ordre alphabetique
        For i = 0 To .ListCount - 1
            For j = 0 To .ListCount - 1
                If .List(i) < .List(j) Then
                    strtemp = .List(i)
                    .List(i) = .List(j)
                    .List(j) = strtemp
                End If
            Next j
        Next i
End With
 
ComboBox1.SetFocus  'mettre curseur dans combobox
ComboBox1.ListIndex = -1   ' met curseur avant le 1 element de la list du combobox
 
End Sub
Pour mon second essai , je décide de tester le meme code mais en passant par un module :C'est la que ca ce gate .
Je me retrouve avec une erreur d'exécution '424' objet requis .J'ai eu beau chercher , je ne vois pas d'ou pourrait venir mon erreur .Il y a surement un truc que j'ai zappé ou alors pas compris .
Merci a ceux et celles qui pourraient me venir en aide

Le code du second essai
le module
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
Sub remplicombo()
 
Dim j As Integer
Dim i As Integer
Dim strtemp As String
 
For j = 2 To Range("B65536").End(xlUp).Row      'Récupère les données de la colonne B...
ComboBox1 = Range("B" & j)
 
If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("B" & j)
Next j
 
With ComboBox1                       'tri par ordre alphabetique
        For i = 0 To .ListCount - 1
            For j = 0 To .ListCount - 1
                If .List(i) < .List(j) Then
                    strtemp = .List(i)
                    .List(i) = .List(j)
                    .List(j) = strtemp
                End If
            Next j
        Next i
    End With
 
ComboBox1.SetFocus  'mettre curseur dans combobox
ComboBox1.ListIndex = -1   ' met curseur avant le 1 element de la list du combobox
 
End Sub
le bouton qui appel le module
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Sub CommandButton1_Click()
remplicombo
End Sub
la ligne d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
If ComboBox1.ListIndex = -1 Then ComboBox1.AddItem Range("B" & j)