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

Access Discussion :

definir le critere d'une requete en VBA


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Points : 47
    Points
    47
    Par défaut definir le critere d'une requete en VBA
    Bonjour

    J'ai créé dans un formulaire une zone de liste déroulante basée sur une requete.
    Celle ci renvoie pour la valeur d'un champ (A) du formulaire, les enregistrements associés d'une autre table filtré sur le champ (A).
    j'ai mis comme critere dans la requete le nom du champ concerné et cela fonctionne. Mais ce nom est défini avec le nom du formulaire !
    Or je voudrais réutiliser cette requete avec un autre formulaire donc un nom différent ! du coup ca plante ! (forcement)
    Comment faire : créer une deuxième requete identique ? et j'aurais bientot autant de requetes que de formulaires !
    Il doit y avoir plus intelligent !!

    Merci

  2. #2
    Membre actif

    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 575
    Points : 259
    Points
    259
    Par défaut
    au lieu de te baser sur une requete essaie dans les propriété de ta liste de changer le champs source (qui devrait etre le nom de ta requete) par un code sql du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from tatable where nom
    je ne suis pas sur de la syntaxe mais un petit cou de f1 dans acces devrait t'aider.
    Ca a marché pour moi en tout cas

  3. #3
    Membre averti Avatar de mcdotta
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    292
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 292
    Points : 324
    Points
    324
    Par défaut
    Hello,

    Imagine que tu as deux listes déroulantes :

    La première liste des pays cmbPays (c'est ton champ a) et la seconde liste cmbVilles les villes du pays précédemment choisi.

    La table tblPays contient les champs :
    fldPAID qui est la clé primaire
    fldPANom

    La table tblVilles contient les champs
    fldVIID qui est la clé primaire
    fldVI_PAID qui est la clé étrangère vers la table Pays
    fldVINom

    Voici ce que tu peux faire.

    Sur l'événement AfterUpdate de cmbPays, tu mets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Sub cmbPays_AfterUpdate()
        Dim strSQL as string
       strSQL = "SELECT tblVilles.* FROM tblVilles
       strSQL = strSQL & " WHERE tblVilles.fldVI_PAID=" & me.cmbPays
       me.cmbVilles.RowSource = strSQL
       me.cmbVilles.Requery
    End Sub
    Attention, il y aura peutêtre quelques ajustements, je n'ai pas testé ce code....

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Points : 47
    Points
    47
    Par défaut
    merci de ta réponse

    ca parait effectivement plus logique!
    par contre je n'arrive pas à définir le nom (c'est le critère de tri) qui est dans mon formulaire actif.
    j'ai tapé Me![Producteur] mais il m'ouvre la fenetre de filtre, je voudrais qu'il prenne la valeur de ce champ.
    As tu une idée ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Points : 47
    Points
    47
    Par défaut
    merci pour la deuxième reponse !
    je ne l'avais pas encore lu avant de poster la precedente.
    je teste cette possibilité et vous raconte la suite plus tard...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Points : 47
    Points
    47
    Par défaut
    merci mcdotta

    ca fonctionne parfaitement
    et ca a l'air tellement simple quand c'est bien expliqué!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. sélection de critere dans une requete vba
    Par salfati dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 03/10/2010, 20h16
  2. Réponses: 2
    Dernier message: 23/05/2006, 16h58
  3. Réponses: 5
    Dernier message: 04/05/2006, 21h02
  4. FAQ : problème avec création d'une requete en VBA
    Par Oluha dans le forum VBA Access
    Réponses: 14
    Dernier message: 14/02/2006, 12h05
  5. Réponses: 2
    Dernier message: 24/11/2005, 11h46

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