Lire et écrire sur une base de données Access 97

JLE

XLDnaute Junior
Bonjour à tous,

Je viens vers vous ce jour car j'ai une base de données Access 97 (que je ne peux convertir en Access 2000-2003) que je dois lire à partir d'Excel 2013 et il me fait l'erreur suivante :

"Impossible d'ouvrir une base de données créée avec une version antérieure de votre application"

Je précise la macro utilisée :

With Cn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.Open "C:\test\test.mdb" '******C'est ici que j'ai l'erreur******
End With


Après avoir fouillé sur le net durant le week-end, il faut se résoudre à ne plus pouvoir se connecter à cette base de données avec Excel 2013, car visiblement il n'est plus possible de le faire à cause de la différence de version.

Avant de l'annoncer à mes collaborateurs, je voudrais qu'on me confirme ce constat ? Y a t il un moyen de contourner ce problème ?

Merci !
 

Paf

XLDnaute Barbatruc
Dernière édition:

JLE

XLDnaute Junior
Re : Lire et écrire sur une base de données Access 97

Merci pour cette réponse.
J'avais d'ailleurs vu ce lien, mais je ne peux pas convertir ma base de données car elle dépend d'un logiciel tiers.
C'est ce que j'ai expliqué dans mon premier post.
 

JLE

XLDnaute Junior
Re : Lire et écrire sur une base de données Access 97

Je me demandais si on ne pouvait pas exécuter une routine excel 2003 dans un vba d'Excel 2013 ?

Genre utiliser le code que j'utilisais en Excel 2003 dans Excel 2013 grâce à un artifice ?

Merci.
 

JLE

XLDnaute Junior
Re : Lire et écrire sur une base de données Access 97

Bonjour et merci pour la réponse,
mais la macro que j'utilise vient de ce site.

je viens d'essayer toutes les connections, mais sans résultats, faut il activer une référence particulière ?
 
G

Guest

Guest
Re : Lire et écrire sur une base de données Access 97

Re,

Je viens de connecter une base access 97 comme suit et avec une référence à ms Activex Data Object 2.6

Code:
Sub connectAccess97()
    Const MDB = "C:\...\...\...\comptoirs 97.mdb"
    Dim con As ADODB.Connection, rs As ADODB.Recordset
    
    Set con = New ADODB.Connection
    con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MDB & ";Jet OLEDB:System Database=system.mdw;"
    con.Open
    
    Set rs = New ADODB.Recordset
    rs.CursorLocation = adUseClient
    rs.Open "SELECT * FROM Clients;", con, adOpenDynamic, adLockBatchOptimistic
    
    Debug.Print rs.RecordCount
    
    rs.Close: Set rs = Nothing
    con.Close: Set con = Nothing
End Sub

Chaine de connexion trouvée sur le site connectionstring.com

A+
 

JLE

XLDnaute Junior
Re : Lire et écrire sur une base de données Access 97

Alors deux choses sures :
J'ai Excel 2013.
J'ai une base de données access 97.
Et j'ai une erreur "Impossible de trouver le fournisseur. Il est peut être mal installé."
Je t'envoi la base de donnée vierge.
Merci.

Edit : et j'ai bien activex 2.6 d'installer.
Edit 2 : J'ai seven 64 bit et ai installé : Microsoft Access Database Engine 2010 Redistributable = toujours même problème.
 

Pièces jointes

  • test.zip
    165.8 KB · Affichages: 82
  • test.zip
    165.8 KB · Affichages: 105
  • test.zip
    165.8 KB · Affichages: 102
Dernière édition:
G

Guest

Guest
Re : Lire et écrire sur une base de données Access 97

Re,

????????????????????????????????????????????????
Et le lien que je t'ai donné alors!!!!!!!!! C'est justement quand un élément du MDAC est mal installé!

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 176
Messages
2 085 961
Membres
103 066
dernier inscrit
bobfils