Christian0258
XLDnaute Accro
Bonsoir à tout le forum,
J'ai trouvé sur ce forum une macro (de michel_m).
Pourriez-vous me dire ce qu'il faut modifier sur son code, pour que ça fonctionne (ça plante sous Set Source).
Sub extraire() ' de michel_M
Dim Source As Object, Requete As Object
Dim Onglet As String, Plage As String, fichier As String
Dim Texte_SQL As String
'détermination de la plage à extraire
fichier = "C:\Users\christian\Desktop\Plannings 2016\tablserv1+.xlsm"
Onglet = "Janv"
Plage = "I97:AN111"
'connexion ADO
Set Source = CreateObject("ADODB.Connection")
Source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"data source=" & fichier & ";Extended Properties=""Excel 8.0;HDR=No;"";"
'exerce la requete ADO sur les donnée à recopier
Texte_SQL = "SELECT * FROM [" & Onglet & "$" & Plage & "]"
Set Requete = CreateObject("ADODB.Recordset")
Set Requete = Source.Execute(Texte_SQL)
'restitue sur ton classeur
Range("I11").CopyFromRecordset Requete
'libère les pointeurs
Set Requete = Nothing
Set Source = Nothing
End Sub
Je précise que je travaille sous Excel 2007.
Merci pour votre aide si précieuse.
Bien amicalement.
Christian
J'ai trouvé sur ce forum une macro (de michel_m).
Pourriez-vous me dire ce qu'il faut modifier sur son code, pour que ça fonctionne (ça plante sous Set Source).
Sub extraire() ' de michel_M
Dim Source As Object, Requete As Object
Dim Onglet As String, Plage As String, fichier As String
Dim Texte_SQL As String
'détermination de la plage à extraire
fichier = "C:\Users\christian\Desktop\Plannings 2016\tablserv1+.xlsm"
Onglet = "Janv"
Plage = "I97:AN111"
'connexion ADO
Set Source = CreateObject("ADODB.Connection")
Source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"data source=" & fichier & ";Extended Properties=""Excel 8.0;HDR=No;"";"
'exerce la requete ADO sur les donnée à recopier
Texte_SQL = "SELECT * FROM [" & Onglet & "$" & Plage & "]"
Set Requete = CreateObject("ADODB.Recordset")
Set Requete = Source.Execute(Texte_SQL)
'restitue sur ton classeur
Range("I11").CopyFromRecordset Requete
'libère les pointeurs
Set Requete = Nothing
Set Source = Nothing
End Sub
Je précise que je travaille sous Excel 2007.
Merci pour votre aide si précieuse.
Bien amicalement.
Christian