J'aimerais en une seule ex=E9cution (VB ?)lancer une=20
recherche dans une base (toutes les tables, tous les=20
champs et tous les enregistrements) une valeur stock=E9e et=20
que le r=E9sultat de cette recherche me donne au moins le=20
nom de la table (ou des tables) o=F9 cette donn=E9e a =E9t=E9=20
saisie.
Est-ce que quelqu'un sait comment faire ?
Merci beaucoup pour votre aide.
Exemple : me donner toutes les tables o=F9 la valeur "Jean"=20
appara=EEt.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour.
il n'est pas facile de donner toute la boucle, je t'en donne la majeure partie:
Dim Db As DAO.Database Dim Rs As DAO.Recordset Dim Tdf As TableDef Dim fld As Field
Set Db = CurrentDb For Each Tdf In Db.TableDefs If Left(Tdf.Name, 4) <> "MSys" Then Set Rs = Db.OpenRecordset(Tdf.Name) If Not Rs.BOF Then Do Until Rs.EOF For Each fld In Rs.Fields '''' ici tester le type de champ If fld.Value = "Jean" Then ' ici on a trouvé End If Next Rs.MoveNext Loop End If Set Rs = Nothing End If Next set nothing des objets ici
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jpg" a écrit dans le message de news: 231001c5129c$1db8b6d0$ Bonjour,
J'aimerais en une seule exécution (VB ?)lancer une recherche dans une base (toutes les tables, tous les champs et tous les enregistrements) une valeur stockée et que le résultat de cette recherche me donne au moins le nom de la table (ou des tables) où cette donnée a été saisie.
Est-ce que quelqu'un sait comment faire ?
Merci beaucoup pour votre aide.
Exemple : me donner toutes les tables où la valeur "Jean" apparaît.
Bonjour.
il n'est pas facile de donner toute la boucle, je t'en donne la majeure
partie:
Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim Tdf As TableDef
Dim fld As Field
Set Db = CurrentDb
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Set Rs = Db.OpenRecordset(Tdf.Name)
If Not Rs.BOF Then
Do Until Rs.EOF
For Each fld In Rs.Fields
'''' ici tester le type de champ
If fld.Value = "Jean" Then
' ici on a trouvé
End If
Next
Rs.MoveNext
Loop
End If
Set Rs = Nothing
End If
Next
set nothing des objets ici
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"jpg" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
231001c5129c$1db8b6d0$a401280a@phx.gbl...
Bonjour,
J'aimerais en une seule exécution (VB ?)lancer une
recherche dans une base (toutes les tables, tous les
champs et tous les enregistrements) une valeur stockée et
que le résultat de cette recherche me donne au moins le
nom de la table (ou des tables) où cette donnée a été
saisie.
Est-ce que quelqu'un sait comment faire ?
Merci beaucoup pour votre aide.
Exemple : me donner toutes les tables où la valeur "Jean"
apparaît.
il n'est pas facile de donner toute la boucle, je t'en donne la majeure partie:
Dim Db As DAO.Database Dim Rs As DAO.Recordset Dim Tdf As TableDef Dim fld As Field
Set Db = CurrentDb For Each Tdf In Db.TableDefs If Left(Tdf.Name, 4) <> "MSys" Then Set Rs = Db.OpenRecordset(Tdf.Name) If Not Rs.BOF Then Do Until Rs.EOF For Each fld In Rs.Fields '''' ici tester le type de champ If fld.Value = "Jean" Then ' ici on a trouvé End If Next Rs.MoveNext Loop End If Set Rs = Nothing End If Next set nothing des objets ici
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jpg" a écrit dans le message de news: 231001c5129c$1db8b6d0$ Bonjour,
J'aimerais en une seule exécution (VB ?)lancer une recherche dans une base (toutes les tables, tous les champs et tous les enregistrements) une valeur stockée et que le résultat de cette recherche me donne au moins le nom de la table (ou des tables) où cette donnée a été saisie.
Est-ce que quelqu'un sait comment faire ?
Merci beaucoup pour votre aide.
Exemple : me donner toutes les tables où la valeur "Jean" apparaît.