Access et VB : attacher des tables via ODBC

kodokan Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
 guigui -
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   Statut Membre Dernière intervention   7
 
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   Statut Membre Dernière intervention   1 204
 
Bonsoir,

As-tu essayé avec ça :

tdfTABLE1.SourceTableName = "TABLE1"

;o)
1
kodokan Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   7
 
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