IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

comment faire pour rechercher sur une table ?


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 10
    Points
    10
    Par défaut comment faire pour rechercher sur une table ?
    Re, je vais peut être reformuler ma question ou bien modifier ma façon de rechercher LOL

    cette fois ci je voudrais pouvoir rechercher un mot "x" sur une table "y" dans un champ "z"
    si une fois l'enregistrement trouvé je voudrais récupérer son idex pour que je puisse afficher tout les enregistrements qui correspondent a cet index là, avez vous une idée?, je sais c'est tout simple mais franchement des fois je bloque sur des truc banal

  2. #2
    Membre averti Avatar de robyseb
    Homme Profil pro
    Programmeur-Analyste
    Inscrit en
    Juillet 2011
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur-Analyste
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2011
    Messages : 305
    Points : 423
    Points
    423
    Par défaut
    Salut commence avec un Dlookup !

    La formule est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DLookup("[nom d'un champ]", "nom d'une table", "critères")
    Parfois il faut faire le tour d'une roche 10 fois avant de s'apercevoir quelle est ronde.
    • Si vous trouvé mon post intéressant, n'oubliez pas de voter coté inférieur droit du message. Merci
    • Si votre Post est indiquez le....
    • Celuil là je devait le mettre ici ....hihi -->

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par robyseb Voir le message
    Salut commence avec un Dlookup !

    La formule est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DLookup("[nom d'un champ]", "nom d'une table", "critères")
    Merci Robyseb

    Re Robyseb,

    en faite, votre function marche très bien sauf que moi je veux l'inverse que ce que cette fonction fait c à d avec un DLookup il faut donné en argument le nom de la table et l'identifiant de l'enregistrement et en sortie il nous renvoit le nom de cette même enregistrement or moi je voudrais donner comme argument le nom de la table et le nom a rechercher (pas l'identifiant) et qui me donne en sortie l'index de cette enregistrement
    j'ai essayer d'inverser les critère mais ça ne marche pas erreur "opération annulé"

    merci d'avance

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Pas très clair tout cela.

    En gros tu ne sais pas dans quel champ se trouve ta donnée, est-ce cela ?

    Philippe

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Bonjour

    Pas très clair tout cela.

    En gros tu ne sais pas dans quel champ se trouve ta donnée, est-ce cela ?

    Philippe
    Re Philippe

    pour t'expliquer voila,

    je veux chercher une variable "x" dans une table "y" dans un champs "z"
    la varibale étant de type String, donc en somme si l'enregistrement existe pour cette variable la, je dois récupérer tout les champs de cette ligne de variable autrement dit

    si "Kalem" existe dans la Table_nom dans le champ "Nom"
    je veux récupérer l'identifiant,l'age, le prénom,fonction,.... de "Kalem"

    merci d'avance

  6. #6
    Membre averti Avatar de robyseb
    Homme Profil pro
    Programmeur-Analyste
    Inscrit en
    Juillet 2011
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur-Analyste
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2011
    Messages : 305
    Points : 423
    Points
    423
    Par défaut
    Re-bonjour !

    en fait ce que tu désire faire ... ben tu peut le faire avec le Dlookup !!

    Donc comme tu dit
    si "Kalem" existe dans la Table_nom dans le champ "Nom"
    je veux récupérer l'identifiant,l'age, le prénom,fonction,.... de "Kalem"

    donc la fonction recherche dans le champ "nom" de la table "Table_nom" selon le critere que nous désirons soit : nom = "Kalem". Si tu désire l'identifiant ou l'age ta fonction ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    age = Dlookup("age", "Table_nom", nom = "Kalem")
    Si tu veux retrouver le prenom ca ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    prenom = Dlookup("Prenom", "Table_nom", nom = "Kalem")
    Si tu désire avoir l'identifiant ta formule ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    identifiant = Dlookup("identifiant", "Table_nom", nom = "Kalem")
    Parfois il faut faire le tour d'une roche 10 fois avant de s'apercevoir quelle est ronde.
    • Si vous trouvé mon post intéressant, n'oubliez pas de voter coté inférieur droit du message. Merci
    • Si votre Post est indiquez le....
    • Celuil là je devait le mettre ici ....hihi -->

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour

    En fonction de l'importance de ta table il faudrait peut-être passer par un recordset DAO pour tout récupérer d'un coup (il y a un excellent tuto et de nombreux exemples sur le forum).

    Les fonctions de domaines sont très bien, mais moins rapides que DAO, en trouvant le bon enregistrement grâce à un recordset, tu récupères toutes les informations d'un seul coup.

    Philippe

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par robyseb Voir le message
    Re-bonjour !

    en fait ce que tu désire faire ... ben tu peut le faire avec le Dlookup !!

    Donc comme tu dit


    donc la fonction recherche dans le champ "nom" de la table "Table_nom" selon le critere que nous désirons soit : nom = "Kalem". Si tu désire l'identifiant ou l'age ta fonction ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    age = Dlookup("age", "Table_nom", nom = "Kalem")
    Si tu veux retrouver le prenom ca ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    prenom = Dlookup("Prenom", "Table_nom", nom = "Kalem")
    Si tu désire avoir l'identifiant ta formule ressemblerai à ceci ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    identifiant = Dlookup("identifiant", "Table_nom", nom = "Kalem")
    @ robyseb: Merci Roby donc je vais retanter mon coup et vais te dire

  9. #9
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Bonjour

    En fonction de l'importance de ta table il faudrait peut-être passer par un recordset DAO pour tout récupérer d'un coup (il y a un excellent tuto et de nombreux exemples sur le forum).

    Les fonctions de domaines sont très bien, mais moins rapides que DAO, en trouvant le bon enregistrement grâce à un recordset, tu récupères toutes les informations d'un seul coup.

    Philippe
    @Philippe JOCHMANS: merci à toi aussi Philippe, je note

Discussions similaires

  1. Comment faire un zoom sur une table
    Par laurent30s dans le forum Contribuez
    Réponses: 0
    Dernier message: 23/01/2013, 10h51
  2. Comment faire un zoom sur une table
    Par laurent30s dans le forum WinDev
    Réponses: 2
    Dernier message: 23/01/2013, 10h49
  3. [WD14] Comment faire un filtrage sur une table
    Par noviceman1 dans le forum WinDev
    Réponses: 22
    Dernier message: 05/01/2012, 13h28
  4. Réponses: 2
    Dernier message: 03/09/2009, 16h02
  5. Comment faire la recherche sur les tables
    Par teZone dans le forum WinDev
    Réponses: 4
    Dernier message: 23/10/2007, 15h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo