Erreur Connexion ODBC avec Jet 4.0

Résolu
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 - 4 déc. 2008 à 10:06
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 - 4 déc. 2008 à 13:31
Bonjour à Tous,

   A partir d'une feuille Excel, j'essaie d'ouvrir une base Access (accès partagé, aucun verrouillage) et j'obtiens une erreur 800040e4d echec de l'authentification). Si j'utilises un autre nom de base de données, je n'ai aucun pb et seul le nom de la base change dans le connection.string ci-dessous celle utilisé):

   cnnDBConnect.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                     "D:\amd\manuel\RSPC\Reporting\2008\Phare\Campagnes.mdb;"

Je précise que dans le cas où elle marche, seule le dossier final change, que les droits windows sont rigoureusement identiques sur tous les dossiers dans les 2 cas.

J'utilise Access ET Excel 2002 + Windows XP SP2

Merci de votre aide.

Calade

2 réponses

cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
4 déc. 2008 à 12:32
Bonjour

Je pense que dans la chaine de connexion il faut indiquer le champ associé au chemin de la base à savoir "Database="

Parfois, il faut aussi ajouté le nom d'utilisateur et le mot de passe associé

Donc on doit avoir 4 variables Provider,Database,User et Pwd (comprendre password) dans la chaine de connexion avec 4 valeurs associées

"Provider=" & valeur1 & ";Database=" & valeur2 & ";User=" & valeur3 & ";Pwd=" & valeur4
3
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
4 déc. 2008 à 13:31
Bonjour et Merci,


   En fait c'est effectivement le mot clé "Database" qui manquait. Le plus fort c'est qu'a force de comparer avec des bouts de code qui tous fonctionnaient (et avaient ce fameux mot clé) je n'y avais rien vu.

   Je devrais changer de lunettes

   Merci encore.


Calade
0