OVH Cloud OVH Cloud

Automation excel

1 réponse
Avatar
Marc
Hello tlm,

Je cherche a ouvrir une feuille excel depuis une autre
feuille, pour faire cela, j'utilise le code suivant.
Lorsqu'il arrive a la ligne rs.open, il me donne une
erreur "Erreur d'execution -214746.... Erreur non
specifie"

Est ce que qqn a une idee ?

Merci a+


Public Sub doCopyData()


Dim rs As ADODB.Recordset
Dim connect As String
Dim sql As String

connect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & "c:\test.xls " & _
"Extended Properties=Excel 8.0;"


sql = "select * from [Feuil4$]"
Set rs = New ADODB.Recordset
rs.Open sql, connect, adOpenForwardOnly, adLockReadOnly
'Sheet1.Range("A1", "N200").Select
'Sheet1.Cells.Delete
If Not rs.EOF Then
Feuil4.Range("A1", "A2").CopyFromRecordset rs

End If
End Sub

1 réponse

Avatar
Frédéric Sigonneau
Bonjour,

Essaye ces modifications de ton code :

Public Sub doCopyData()
Dim rs As ADODB.Recordset
Dim connect As String
Dim sql As String

connect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & "c:test.xls " & _
"Extended Properties=Excel 8.0;"

sql = "select * from [Feuil4$];"
Set rs = New ADODB.Recordset
rs.Open sql, connect, adOpenForwardOnly, adLockReadOnly, adCmdText

If Not rs.EOF Then
Feuil4.Range("A1").CopyFromRecordset rs
End If

End Sub

Des procédures utilisant les objets ADO sur cette page :

http://perso.wanadoo.fr/frederic.sigonneau/Ado.htm

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

Marc a écrit:
Hello tlm,

Je cherche a ouvrir une feuille excel depuis une autre
feuille, pour faire cela, j'utilise le code suivant.
Lorsqu'il arrive a la ligne rs.open, il me donne une
erreur "Erreur d'execution -214746.... Erreur non
specifie"

Est ce que qqn a une idee ?

Merci a+


Public Sub doCopyData()


Dim rs As ADODB.Recordset
Dim connect As String
Dim sql As String

connect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & "c:test.xls " & _
"Extended Properties=Excel 8.0;"


sql = "select * from [Feuil4$]"
Set rs = New ADODB.Recordset
rs.Open sql, connect, adOpenForwardOnly, adLockReadOnly
'Sheet1.Range("A1", "N200").Select
'Sheet1.Cells.Delete
If Not rs.EOF Then
Feuil4.Range("A1", "A2").CopyFromRecordset rs

End If
End Sub