VBA Accès aux enregistrements d'une table lié
Fermé
Audrey
-
20 mars 2003 à 14:42
adelavar Messages postés 4 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 21 mars 2003 - 21 mars 2003 à 14:28
adelavar Messages postés 4 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 21 mars 2003 - 21 mars 2003 à 14:28
A voir également:
- VBA Accès aux enregistrements d'une table lié
- Table ascii - Guide
- Table des matières word - Guide
- Acces rapide - Guide
- Comment enregistrer une video youtube - Guide
- Accès refusé - Guide
10 réponses
adelavar
Messages postés
4
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
21 mars 2003
2
21 mars 2003 à 14:28
21 mars 2003 à 14:28
Merci à voux deux, c'était bien l'action dbopendynaset qu'il fallait mettre.
L'accès aux enregistrements ne mérite même pas d'être changer ca fonctionne comme ca
L'accès aux enregistrements ne mérite même pas d'être changer ca fonctionne comme ca
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
20 mars 2003 à 15:41
20 mars 2003 à 15:41
Bonjour,
qu'entends-tu par des tables liées, ce sont des tables attachées ?
si c'est le cas, cela ne doit pas poser de problème. Je l'utilise depuis longtemps et je n'ai jamais eu de souci.
Peut-être sont-ce des tables liées avec ODBC ?
Peux-tu nous en dire plus : message d'erreur, comportement de l'application ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
qu'entends-tu par des tables liées, ce sont des tables attachées ?
si c'est le cas, cela ne doit pas poser de problème. Je l'utilise depuis longtemps et je n'ai jamais eu de souci.
Peut-être sont-ce des tables liées avec ODBC ?
Peux-tu nous en dire plus : message d'erreur, comportement de l'application ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
20 mars 2003 à 15:43
20 mars 2003 à 15:43
VB ou VBA aussi...
. .
\_/
. .
\_/
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
20 mars 2003 à 15:43
20 mars 2003 à 15:43
Et tu es sur(e) de la liaison en question?
. .
\_/
. .
\_/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
adelavar
Messages postés
4
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
21 mars 2003
2
20 mars 2003 à 15:52
20 mars 2003 à 15:52
oui ce sont des tables attachées.
Je reprend:
j'ai une base données
et une base traitement. DANS CETTE BASE JE VAIS DANS FICHIER-données externes-liées les tables et voila mes tables sont liées dans mes traitements (pour info cela permet à l'utilisateur de continuer à travailler et de remplir la base pendant qu'on modifie des etas ou des formulaires..)
Donc avec des tables liées recordset ne fonctionne pas il y a qq chose à faire en plus.
Merci à vous de votre intention
Je reprend:
j'ai une base données
et une base traitement. DANS CETTE BASE JE VAIS DANS FICHIER-données externes-liées les tables et voila mes tables sont liées dans mes traitements (pour info cela permet à l'utilisateur de continuer à travailler et de remplir la base pendant qu'on modifie des etas ou des formulaires..)
Donc avec des tables liées recordset ne fonctionne pas il y a qq chose à faire en plus.
Merci à vous de votre intention
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
20 mars 2003 à 16:06
20 mars 2003 à 16:06
quel est le message d'erreur ? qu'est-ce qui se passe ? car "recordset ne fonctionne pas il y a qq chose à faire en plus" n'est pas un message d'erreur ACCESS (j'ai vérifié :-))
quand tu vas dans Outils/Compléments/Gestionnaire de tables attachées, tu vois tes tables avec l'emplacement des tables sources ou tu as des anomalies ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
quand tu vas dans Outils/Compléments/Gestionnaire de tables attachées, tu vois tes tables avec l'emplacement des tables sources ou tu as des anomalies ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
adelavar
Messages postés
4
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
21 mars 2003
2
20 mars 2003 à 16:32
20 mars 2003 à 16:32
erreur d'exécution 3219
débogage
Set MaTable = MaDB.OpenRecordset("TEnregist", DB_OPEN_TABLE)
Ca te va comme ereur
débogage
Set MaTable = MaDB.OpenRecordset("TEnregist", DB_OPEN_TABLE)
Ca te va comme ereur
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
20 mars 2003 à 16:44
20 mars 2003 à 16:44
C'est déjà plus clair ! :-)
as-tu fait :
Set MaDB=Currentdb ? (ou autre chose)
MaDB et MaTable sont-ils des objets de type database et recordset, respectivement ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
as-tu fait :
Set MaDB=Currentdb ? (ou autre chose)
MaDB et MaTable sont-ils des objets de type database et recordset, respectivement ?
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
TopperHarley
Messages postés
8
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
26 mai 2008
21 mars 2003 à 09:15
21 mars 2003 à 09:15
bonjour à tous,
non pas besoin de "set MaDB = currentdb" car il a écrit :
Set MaTable = MaDB.OpenRecordse("TEnregist",DB_OPEN_TABLE)
Mais tu peux utiliser les tabls liées en VBA grâce à la collection TableDefs.
L'objet TableDef peut aussi gérer les liens aux tables de source de données ISAM et ODBC. Il faut mettre dans ton code les propriétés Connect et SourceTableName et la méthode CreateTableDef de cette activité.
Tu fais appel à la méthode CreateTableDef pour définir dans une variable une référence à la table liée. Ensuite, vous définissez les propriétés Connect et SourceTableName de la variable. La propriété Connect spécifie le type de source de données et le chemin à la source de données spécifique que vous voulez lier.
SourceTableName est le nom de la table que vous liez.
Il faut enfin terminer le processus en ajoutant l'objet TableDef à l colection TableDefs.
Bonne prog...
Guillaume, pour vous servir et accessoirement m'aider aussi
non pas besoin de "set MaDB = currentdb" car il a écrit :
Set MaTable = MaDB.OpenRecordse("TEnregist",DB_OPEN_TABLE)
Mais tu peux utiliser les tabls liées en VBA grâce à la collection TableDefs.
L'objet TableDef peut aussi gérer les liens aux tables de source de données ISAM et ODBC. Il faut mettre dans ton code les propriétés Connect et SourceTableName et la méthode CreateTableDef de cette activité.
Tu fais appel à la méthode CreateTableDef pour définir dans une variable une référence à la table liée. Ensuite, vous définissez les propriétés Connect et SourceTableName de la variable. La propriété Connect spécifie le type de source de données et le chemin à la source de données spécifique que vous voulez lier.
SourceTableName est le nom de la table que vous liez.
Il faut enfin terminer le processus en ajoutant l'objet TableDef à l colection TableDefs.
Bonne prog...
Guillaume, pour vous servir et accessoirement m'aider aussi
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
>
TopperHarley
Messages postés
8
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
26 mai 2008
21 mars 2003 à 09:29
21 mars 2003 à 09:29
oui, mais quelle est la valeur de MaDB ? on ne la voit nulle part, et on y fait référence dans OPENRECORDSET.
j'aimerais savoir pourquoi tu dis qu'il n'est pas besoin de set...=currentdb car je ne vois pas dans openrecordset le moyen qu'a cette action pour trouver de quelle base on parle.
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
j'aimerais savoir pourquoi tu dis qu'il n'est pas besoin de set...=currentdb car je ne vois pas dans openrecordset le moyen qu'a cette action pour trouver de quelle base on parle.
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
TopperHarley
Messages postés
8
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
26 mai 2008
>
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
21 mars 2003 à 09:47
21 mars 2003 à 09:47
Bonjour à toi,
oui tu as raison, excuse moi j'ai omis de préciser tout ça.
Alors voilà un exemple pour te satisfaire, pas besoin de spécifier la base pour les tables liées (sauf si tu utilises des éléments de celle çi):
dim rs as recordset
set rs = new ADODB.recordset
rs.open "clients",_
"provider=microsoft.jet.oledb.4.0;"&
"Data source=C:\program files\microsoft office\office\"&_
"Samples\comptoir.mdb;"
.
.
.
rs.close
end sub
Alors heureux?!? lol
Guillaume, pour vous servir et accessoirement m'aider aussi
oui tu as raison, excuse moi j'ai omis de préciser tout ça.
Alors voilà un exemple pour te satisfaire, pas besoin de spécifier la base pour les tables liées (sauf si tu utilises des éléments de celle çi):
dim rs as recordset
set rs = new ADODB.recordset
rs.open "clients",_
"provider=microsoft.jet.oledb.4.0;"&
"Data source=C:\program files\microsoft office\office\"&_
"Samples\comptoir.mdb;"
.
.
.
rs.close
end sub
Alors heureux?!? lol
Guillaume, pour vous servir et accessoirement m'aider aussi
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
>
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
21 mars 2003 à 10:03
21 mars 2003 à 10:03
Salut,
merci pour les exemples, mais je ne suis pas le demandeur ! :-)
la demande initiale d'Audrey part de tables qui sont déjà liées, point n'est besoin de redéfinir les liens.
Je voudrais juste qu'elle me confirme les valeurs de MaDB et la déclaration des objets (database et recordset)... :-)
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
merci pour les exemples, mais je ne suis pas le demandeur ! :-)
la demande initiale d'Audrey part de tables qui sont déjà liées, point n'est besoin de redéfinir les liens.
Je voudrais juste qu'elle me confirme les valeurs de MaDB et la déclaration des objets (database et recordset)... :-)
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
TopperHarley
Messages postés
8
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
26 mai 2008
>
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
21 mars 2003 à 10:16
21 mars 2003 à 10:16
Tout à l'heure j'ai donné la solution à Audrey, les tables sont déjà liées oui mais il faut établir une connexion en VBA afin d'aller chercher ces données. C'est comme avec un fichier, avant de lire les infos, il faut ouvrir le fichier! lol
Concernant Audrey, ce serait cool si elle pouvait dire si son problème est résolu afin d'éviter de revenir tout le temps sur le sujet mais je pense avoir répondu correctement.
A nous deux, la solution devrait tourner!
Guillaume, pour vous servir et accessoirement m'aider aussi
Concernant Audrey, ce serait cool si elle pouvait dire si son problème est résolu afin d'éviter de revenir tout le temps sur le sujet mais je pense avoir répondu correctement.
A nous deux, la solution devrait tourner!
Guillaume, pour vous servir et accessoirement m'aider aussi
blux
Messages postés
26490
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 novembre 2024
3 315
21 mars 2003 à 11:47
21 mars 2003 à 11:47
J'ai trouvé !!!
Dans :
Set MaTable = MaDB.OpenRecordset("TEnregist", DB_OPEN_TABLE)
DB_OPEN_TABLE n'existe pas, c'est "dbopentable" qu'il faut mettre, je me disais bien aussi qu'il y avait qq chose qui coinçait visuellement !
Et hop ! :-)
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Dans :
Set MaTable = MaDB.OpenRecordset("TEnregist", DB_OPEN_TABLE)
DB_OPEN_TABLE n'existe pas, c'est "dbopentable" qu'il faut mettre, je me disais bien aussi qu'il y avait qq chose qui coinçait visuellement !
Et hop ! :-)
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
adelavar
Messages postés
4
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
21 mars 2003
2
21 mars 2003 à 13:26
21 mars 2003 à 13:26
je viens de revenir.. Le temps d'analyser tout ce que vous avez mis et de le tester et je vous dit ce que ca donne.
Merci.
Merci.