Excel ODBC & .dbf
Bonjour à tous,
à ce jour, j'ai toujours utilisé VBA avec les fichiers Excel.
Je dois maintenant utiliser Excel pour analyser des données provenant de fichiers au format .dbf
Après quelques heures de recherches, j'ai produit le code ci-dessous... qui retourne un message d'erreur à l'instruction
rs.Open "[sData]", cnn de la procédure LireDBF.
Parce que le message d'erreur s'affiche à cette ligne, je prends pour acquis, peut-être à tort, que les instructions précédentes sont OK.
L'un d'entre vous peut-il m'indiquer où je fais erreur ?
Merci.
Public cnn As ADODB.Connection
'--------------------------------------
Sub TEST_Connexion()
Call ConnectDBF
Call LireDBF
End Sub
'--------------------------------------
Public Sub ConnectDBF()
'2017-07-08
Set cnn = New ADODB.Connection
dbPath = Path
Dim ch As String
ch = ActiveWorkbook.Path & "\2017\Avantage\Ava01"
cnn.ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277};SourceType=DBF;SourceDB=ch;Exclusive=No;"
cnn.Open
End Sub
'--------------------------------------
Private Sub LireDBF()
'2017-07-08
Dim ch As String
ch = ActiveWorkbook.Path & "\2017\Avantage\Ava01"
Dim sData As String
Dim sCH As String
sCH = ch & "\Saisie.dbf"
sData = "Select scont,semp from " & sCH
Set rs = New ADODB.Recordset
'
rs.Open "[sData]", cnn
'''''' MESSAGE : INSTRUCTION SQL NON VALIDE ; Delete, Insert, Procedure, Select ou Update attendus
'
i = 1
While Not rs.EOF
For j = 1 To rs.Fields.Count - 1
Feuil2.Cells(i, j) = rs(j - 1)
Next
i = i + 1
rs.MoveNext
Wend
End Sub
bonjour
il est plus simple d'ouvrir le .dbf (dans le menu ouvrir, choisir format dbf)
et c'est enregistrable en macro sans doute
Bonjour,
Pour ce type d'import, je me suis fait cet outil.
Un bouton pour choisir le dossier contenant les .dbf, et le code crée un onglet par table avec son contenu.
J'ai un outil similaire pour les .accdb ou .mdb si besoin.
Pierre