Merci à vous tous pour vos reponses.
j'ai bien mit le bon nom du listbox dans mon programme.... mais ca ne marche toujours pas.
Par contre le fichier que vous m'avez envoyé @i20100
ca marche tres bien, sauf que j'essai de faire pareil en utilisant comme source une base de données MySQL.
voila mon code actuel qui cherche les données dans la base MySQL et il les met dans un fichier excel.
moi je cherche pas à afficher ces valeurs dans une fichier excel mais les afficher dans un USERFORM dans une liste deroulante "Listbox" :
Sub ADOExcelSQLServer()
Dim Cn As ADODB.Connection
Dim Server_Name As String
Dim Database_Name As String
Dim User_ID As String
Dim Password As String
Dim SQLStr As String
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim Num As String
Server_Name = "127.0.0.1"
Database_Name = "base"
User_ID = "root"
Password = "m02pas"
'------------- Num est le critere de recherche dans ma base de donnée MySQL
Num = 1022
SQLStr = "SELECT numero FROM table01 WHERE numero LIKE '" & Num & "%'"
Set Cn = New ADODB.Connection
Cn.Open "Driver={MYSQL ODBC 8.0 Unicode Driver};Server=" & Server_Name & ";Database=" & Database_Name & ";Uid=" & User_ID & ";Pwd=" & Password & ";"
rs.Open SQLStr, Cn, adOpenStatic
'-----------------Affichage des resultats dans la feuil 2 de mon classeur Excel, je cherche alors à remplacer cette partie pour pouvoir afficher les resultats dans un menu deroulant "Listbox" de mon UserForm
With Worksheets("Feuil2").Range("a1:z500")
'------------------------------------------------------
.ClearContents
.CopyFromRecordset rs
End With
rs.Close
Set rs = Nothing
Cn.Close
Set Cn = Nothing
End Sub