Access et VB : attacher des tables via ODBC

Fermé
kodokan Messages postés 3 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 10 mars 2009 - 9 mars 2009 à 20:14
 guigui - 27 juil. 2009 à 15:49
Bonjour,
je souhaite écrire un code VB sous Access qui permette d'attacher une table d'un fichier externe dans ma BaseMarket.mdb courante.
Ce code doit automatiser ce qu'on fait d'habitude par : attacher la table -> type de fichier : ODBC Database -> Source de données machine (pilote Microsoft ODBC for Oracle ) -> fenêtre avec nom d'utilisateur, mot de passe, choix du serveur -> choix de la table dans la liste.
J'ai trouvé ce code :

Sub ConnexionTables()

' On attache une table ODBC à une base de données :
' 1. Créer des variables pour les objets Database et TableDef :
Dim dbs As Database, tdfTABLE1 As TableDef

' 2. Ouvrir la base de données existante:
Set dbs = OpenDatabase(CurrentDb.Name)

' 3. Créer des objets TableDef pour les tables externes:
Set tdfTABLE1 = dbs.CreateTableDef("TABLE1")

' 4. Paramétrer TableDef pour faire référence à chaque table attachée:
tdfTABLE1.Connect = "ODBC;DSN=BaseMarket_Microsoft;UID=readonly;PWD=pass_readonly;"
tdfTABLE1.SourceTableName = "BaseMarket.TABLE1"

' 5. Ajoutez l'objet TableDef à la collection TableDefs à l'aide de la
'méthode Append.
dbs.TableDefs.Append tdfTABLE1

End Sub


Mais il me renvoie : Erreur d'exécution 3011, Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'BaseMarket.TABLE1'.

Que faire ?
Avez-vous d'autres idées de code VB ?

Merci par avance.
A voir également:

4 réponses

kodokan Messages postés 3 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 10 mars 2009 7
10 mars 2009 à 17:05
Maintenant, je souhaite "détacher" une table de ma base.
Savez-vous comment faire ?
Merci par avance.
7
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
9 mars 2009 à 22:20
Bonsoir,

As-tu essayé avec ça :

tdfTABLE1.SourceTableName = "TABLE1"

;o)
1
kodokan Messages postés 3 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 10 mars 2009 7
10 mars 2009 à 10:35
Salut,
en effet, le seul problème tient dans le nom de la table.
J'ai ricoché sur un autre problème : manuellement, je peux attacher une table "user.tab", son lien devient "user_tab" !
Mais quand je la lie avec mon algo, le "." n'est pas accepté.
Sachant cela, l'essentiel est que ça marche.
Merci pour l'aide,
j'aurai sans doute d'autres questions !
0