Re : Importation de feuilles dans un classeur
tu recopie le code ci deoous dans un module tu adaptes le code pour le chemin du fichier
Sub RequeteClasseurFermejt()
Dim Cn As ADODB.Connection
Dim Fichier As String
Dim NomFeuille As String, texte_SQL As String
Dim Rst As ADODB.Recordset
'Définit le classeur fermé servant de base de données
Fichier = "D:\CSVECT\essai1\jt.xls"
'Nom de la feuille dans le classeur fermé
NomFeuille = "sheet1"
Set Cn = New ADODB.Connection
'--- Connection ---
'Lire et écrire dans les classeurs Excel fermés par SilkyRoad (silkyroad.developpez.com)
'- 11 -
'http://silkyroad.developpez.com/VBA/ClasseursFermes/
'VBA
With Cn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source=" & Fichier & _
";Extended Properties=Excel 8.0;"
.Open
End With
'-----------------
'Définit la requête.
'/!\ Attention à ne pas oublier le symbole $ après le nom de la feuille.
texte_SQL = "SELECT * FROM [" & NomFeuille & "$]"
Set Rst = New ADODB.Recordset
Set Rst = Cn.Execute(texte_SQL)
'Ecrit le résultat de la requête dans la cellule A2
Range("A2").CopyFromRecordset Rst
'--- Fermeture connexion ---
Cn.Close
Set Cn = Nothing
End Sub
tu vas dans VBA
tu fais
outils
références
et tu coches
Microsoft ActiveX Data Objects 2.x library
Normalement cela passe
A+