Bonjour à tous,
J'ai une Userform avec plusieurs ComboBox et je souhaiterais lors de l'initialisation de ma Userform créer une macro me permettant de trier par ordre alphabétique les différentes listes que je souhaite intégrer dans les-dites ComboBox.
Pour cela, j'ai créé une macro pour laquelle je vais demander la ComboBox à classer, l'onglet et la colonne dans lequel je dois prendre les valeurs me permettant de remplir la ComboBox. J'en profite pour classer par ordre alphabétique les valeurs dans ma liste.
Sub Classement_Ordre_Alphabetique(Nom_ComboBox As ComboBox, Nom_Onglet As String, Colonne As String)
With Worksheets(Nom_Onglet)
Dim Cel As Range
Dim i, j As Byte
Dim Variable_Temp As String
For Each Cel In Range(Colonne & "3:" & Colonne & .Range(Colonne & .Rows.Count).End(xlUp).Row - 1)
.Nom_ComboBox.AddItem Cel.Value
Next Cel
With .Nom_ComboBox
For i = 0 To .ListCount - 1
For j = 0 To .ListCount - 1
If .List(i) < .List(j) Then
Variable_Temp = .List(i)
.List(i) = .List(j)
.List(j) = Variable_Temp
ElseIf .List(i) = .List(j) Then
.List(i) = .List(j)
End If
Next j
Next i
End With
End With
End Sub
Le pb est le suivant: ma "variable" Nom_ComboBox n'est pas reconnue et j'ai une erreur du type "propriété ou méthode non gérée par cet objet".
J'espère avoir été clair et que quelqu'un saura m'aider à résoudre le problème.
Merci d'avance!
J'ai une Userform avec plusieurs ComboBox et je souhaiterais lors de l'initialisation de ma Userform créer une macro me permettant de trier par ordre alphabétique les différentes listes que je souhaite intégrer dans les-dites ComboBox.
Pour cela, j'ai créé une macro pour laquelle je vais demander la ComboBox à classer, l'onglet et la colonne dans lequel je dois prendre les valeurs me permettant de remplir la ComboBox. J'en profite pour classer par ordre alphabétique les valeurs dans ma liste.
Sub Classement_Ordre_Alphabetique(Nom_ComboBox As ComboBox, Nom_Onglet As String, Colonne As String)
With Worksheets(Nom_Onglet)
Dim Cel As Range
Dim i, j As Byte
Dim Variable_Temp As String
For Each Cel In Range(Colonne & "3:" & Colonne & .Range(Colonne & .Rows.Count).End(xlUp).Row - 1)
.Nom_ComboBox.AddItem Cel.Value
Next Cel
With .Nom_ComboBox
For i = 0 To .ListCount - 1
For j = 0 To .ListCount - 1
If .List(i) < .List(j) Then
Variable_Temp = .List(i)
.List(i) = .List(j)
.List(j) = Variable_Temp
ElseIf .List(i) = .List(j) Then
.List(i) = .List(j)
End If
Next j
Next i
End With
End With
End Sub
Le pb est le suivant: ma "variable" Nom_ComboBox n'est pas reconnue et j'ai une erreur du type "propriété ou méthode non gérée par cet objet".
J'espère avoir été clair et que quelqu'un saura m'aider à résoudre le problème.
Merci d'avance!