Hello,
Voici le code que j'utilise :
Sub Dossiers()
requete = "select dos_nodossier as Dossiers,dos_libelle as libelle from dossier,dossappli where dap_nodossier=dos_nodossier and dap_nomexec=""CCS5.exe"" and dos_nodossier<>""000STD"" group by dos_nodossier,dos_libelle order by dos_nodossier"
database = "ODBC;DRIVER=SQL Server;SERVER=" & Srv & ";WSID=" & Srv & "P;DATABASE=DB000000;UID=" & USerSql & ";PWD=" & MdPSql & ";QuotedId=No"
With Sheets("Dossiers").QueryTables.Add(Connection:=database, Destination:=Range("C8"))
.CommandText = requete
.FieldNames = True
.BackgroundQuery = False
.RefreshStyle = False
.SaveData = True
.AdjustColumnWidth = False
.PreserveFormatting = True
.Refresh BackgroundQuery:=False
End With
End Sub
A noter que je déclare une fonction pour les paramètres car ils peuvent changer. Dans ton cas ce n'est peut être pas nécessaire :
Public Function Srv() As String 'nom du serveur
Srv = Sheets("Paramètres").Range("C5").Value
End Function
Public Function USerSql() As String 'user sql
USerSql = Sheets("Paramètres").Range("C8").Value
If Sheets("Paramètres").Range("C8").Value = "" Then USerSql = "ADMIN"
End Function
Public Function MdPSql() As String 'Mdp Sql
MdPSql = Sheets("Paramètres").Range("D8").Value
If Sheets("Paramètres").Range("D8").Value = "" Then MdPSql = "ADMIN"
End Function
J'espère que çà pourra t'aider