Tables liées [Access] - VB/VBA/VBS - Programmation
Marsh Posté le 26-05-2005 à 16:15:07
Je t'envoie le code que j'ai pondu il y a quelques années.
Je n'ai rien vérifié et il a été écrit pour Access 97.
Dim sCurPath As String, IsaPath As String, HeadPath As String |
Essaye de voir si tu peux en tirer quelque chose.
Edit --> En relisant, je me rends compte que j'ai appris à travailler plus efficacement aujourd'hui... Mais je ne développe plus sur Access.
Marsh Posté le 26-05-2005 à 16:33:00
AlainTech a écrit : Je t'envoie le code que j'ai pondu il y a quelques années.
|
Salut,
Merci pour l'aide mais ça ne change strictement rien... Ton code est exactement le même que le mien, mise à part les attributions de variables...
Si jamais je suis en Access 2002... Et si qqn a une autre idée, je prends volontiers!
Marsh Posté le 26-05-2005 à 16:55:22
La seule idée qui me vient c'est de mettre:
Msgbox(strDBPath & "\MaBase.mdb" ) |
Juste avant ton Connect.
Pour tout dire, je me demande s'il n'y aurait pas un \ de trop à la fin de strDBPath.
Non pas que je mette en doute tes vérifications mais, parfois, avec la fatigue, les choses les plus évidentes ne nous sautent pas aux yeux.
En fait, il est logique qu'il ait toujours l'ancien chemin tant que tu n'as pas fait le RefreshLink
Marsh Posté le 26-05-2005 à 17:05:42
AlainTech a écrit : La seule idée qui me vient c'est de mettre:
|
Merci du conseil...
J'ai quand même vérifié dans le doute... Et mon chemin vers la base est bien correct. Je n'ai pas de \ de trop et la base existe bien (j'ai vérifié 10x je pense)
En fait, c'est au moment où je fais le .RefreshLink que j'ai droit à la belle erreur no 3024 (fichier introuvable). Le problème étant que la propriété .connect de ma tabledefs reste à l'ancienne valeur
Ca commence à me taper sur le système cette histoire
Marsh Posté le 31-05-2005 à 09:41:04
gfa a écrit : Merci du conseil... |
Ouf,
Finalement j'ai trouvé la solution !!! En fait, la propriété .Connect est en read-only dans Acces... Donc aucune chance que cela fonctionne!
Du coup, ce que j'ai fait, c'est détruire ma table liée (si sa liaison n'est pas correcte) et refaire la liaison.
Au cas où cela arriverait à quelqu'un d'autre, je vous publie mon code ci-dessous:
Code :
|
Voilà... A +
Marsh Posté le 31-05-2005 à 20:59:24
C'est curieux, mon code fonctionnait sous Access 97.
Peut-être que ça a changé dans les versions suivantes.
Marsh Posté le 17-08-2006 à 15:45:41
ton code marche très bien sous Access 2002 chez moi (j'utilisais le même code sous 97 également)
j'ai eu des soucis avec DAO Jet au début (j'ai du simplement le cocher dans Outils/Référence car il n'était pas coché, je n'arrivais pas à faire d'OpenRecordset non plus)
Marsh Posté le 21-12-2006 à 15:21:08
Trop fort je me retrouve avec le même souci et faisant un recherche sur Google je retombe sur la solution que j'avais moi même posté !!!
Alzeimer me guète !!!
Par contre ça fonctionne pas, je vais sûrement passer également par une suppression de la table attachée.
Marsh Posté le 21-12-2006 à 16:19:28
solution :
Code :
|
ça fonctionne pour moi, par contre la table doit porter le même nom dans la base source
il me refuse le SourceTableName (sinon il me semble qu'on peux l'indiquer dans le .Connect)
Pareil il me refuse le Append, mais cela fonctionne sans (j'ai utilisé le code du site de Microsoft pourtant...)
Marsh Posté le 26-05-2005 à 15:25:14
Salut tout le monde,
J'essaie de mettre à jour, via du code VBA, une table liées qui se trouve dans mon application.
Pour ça j'utilise le code suivant :
Dans ce code, strDBPath contient le chemin complet vers la DB. Le problème ne vient pas de là et mon chemin est correct... J'ai testé.
Malheureusement pour moi, au moment où je fais le .RefreshLink, il me sort l'erreur comme quoi le chemin à la DB n'est pas valide. Forcément puisqu'il a gardé l'ancien chemin plutôt que de le remplacer par celui que je lui donne à la ligne d'en-dessus.
Est-ce que qqn a une idée?
Merci d'avance!