Sub ADOLocal()
Dim Conn As Object, ConnString As String, Rs As Object, StrSQL As String
ConnString = "Driver={Microsoft Excel Driver (*.xls)};Dbq=" & ThisWorkbook.FullName & ";ReadOnly=0;"
StrSQL = "select [Feuil1$].num, [Feuil2$].code2, [Feuil1$].code from [Feuil1$] inner join [Feuil2$] on [Feuil1$].num = [Feuil2$].num"
Set Conn = CreateObject("ADODB.Connection")
With Conn
.CursorLocation = 3
.Open ConnString
.CommandTimeout = 0
Set Rs = .Execute(StrSQL)
End With
With Sheets("Feuil3")
.Cells.ClearContents
.Range("a1").Value = "Num"
.Range("b1").Value = "Code2"
.Range("c1").Value = "Code"
.Range("A2").CopyFromRecordset Rs
End With
Rs.Close
Conn.Close
Set Rs = Nothing
Set Conn = Nothing
End Sub