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 :

Appliquer filtre dans une liste déroulante selon variable


Sujet :

VBA Access

  1. #1
    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 Appliquer filtre dans une liste déroulante selon variable
    Bonjour voici mon problème je désire effectué un filtre dans une liste déroulante qui comporte plusieur choix possible. Exemple la liste comporte le nom des secouristes qui sont affecté sur une intervention. Donc lors de leurs ouverture de session je veux que ceux-ci ne peuvent voir seulement leurs affectation voici un bout de code que j'ai écrit mais ca ne fonctionne pas la fenetre ouvre mais sans aucune information donc il semble y avoir un problème lors de l'application de se dit filtre a la liste. Merci de votre aide

    P.S. se bout de code est dans un module il permet l'affectation de plusieurs bouton dans un autre formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    '*****************************************
    'Bouton Form User
    '*****************************************
     
    Sub BoutonFormUser(ByVal itemnumber As Long)
    Dim strnomForm As String
    Dim acces_level As Integer
    Dim NomFiltre As String
    On Error GoTo err_BoutonFormUser
     
    strnomForm = Nz(DLookup("Argument", "Switchboarditems", "itemnumber=" & itemnumber), "")
        If strnomForm = "" Then
            MsgBox "Il n'y a aucune Option Disponible!", vbInformation, "Option non Valide!"
        Exit Sub
     
        Else
     
     
        acces_level = Nz(DLookup("niveau_acces", "tbl_secouriste", "IDsecouriste=Forms!hiddenform!IDsecouristevar"), 0)
        If acces_level < 3 Then
            DoCmd.Close
            DoCmd.OpenForm [strnomForm], acNormal
        Exit Sub
     
        Else
           NomFiltre = Forms!hiddenform!IDsecouristevar
           DoCmd.Close
           DoCmd.OpenForm [strnomForm], acNormal, , "liste des secouristes" = NomFiltre 'Mon problème semble être ici !!
        End If
     End If
     
    exit_BoutonFormUser:
    Exit Sub
    err_BoutonFormUser:
    MsgBox Err.Description
    Resume exit_BoutonFormUser
    End Sub

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Bonjour,

    C'est tout le problème d'utiliser des espaces dans les noms des contrôles !

    Il faut savoir mettre les crochets où il faut.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ..."[liste des secouristes]" = NomFiltre
    Cordialement,

  3. #3
    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
    Franchement je suis d'accord avec toi et je suis en train de corriger le problème et probablement que celuil-ci est un des derniers. mais je croyait que c'étais plus compliquer de trier une liste déroulante ... je test et je te revient avec le résultat merci beaucoup

  4. #4
    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
    Finalement après test même avec les accolade sa ne fonctionne pas aurait tu une autre solution ?

  5. #5
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Oups ! (Ciboire ! comme on dit chez toi)

    Avec les crochets ne n'avais pas vu le =.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "[liste des secouristes]=" & NomFiltre
    Le filtre est comme le where, présent d'ailleurs dans cette commande, il doit être compatible avec un where SQL.

    Lorsque l'on envoi une telle expression elle doit être lisible comme une condition WHERE, avec VBA on fait de la concaténation pour créer l'expression.

    Cordialement,

  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
    Bonjour loufab encore merci de ton aide et oui ciboire lolll malheureusement sa ne fonctionne toujours pas access me dit que je peut pas utiliser le where et having voici un Screenshots,

    j'espère trouver une soluce ....

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Gulp effectivement avec une requete de regroupement tu ne peux pas.

    Déplace-le sur l'option Filtre de la commande.

    C'est l'option précédente de openform.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docmd.openform nom,view,filtre,where

  8. #8
    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 loufab oufff 1 virgule ... mais sa commence à devenir passionnant se problème. Ca fonctionne excepté que le filtre ne s'applique pas. Le formulaire s'ouvre correctement sans message d'erreur mais affiche tous les enregistrements. Peut-être aurait tu une autre piste à la place d'affecter le filtre sur une liste déroulante.

  9. #9
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Peux-tu poster le contenu de NomFiltre au moment de l'execution ?

  10. #10
    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
    bonjour , j'ai tester justemement a savoir si il y avait bien une variable affecté
    et c.est le cas voici mon screenshot ...

  11. #11
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Je comprends mieux ton problème.

    Cette syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[liste des secouristes]=" & NomFiltre
    C'est pour du numérique alors que ton critère est de type texte incomplet.

    Voici comment tu dois le coder.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[liste des secouristes] LIKE ""*" & NomFiltre & ""*"
    Regarde mon tuto sur l'opérateur Like

    http://loufab.developpez.com/tutorie...operateurlike/

    pour en savoir plus sur cet opérateur incontournable.

    Cordialement,

  12. #12
    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
    Une lumiere au bout du tunnel ... quand tu apprend tu vient qu'à te perdre ... merci je test tous ca et je te donne le compte rendu merci énormément .. question à part j'ai cru remarqué sur le site qu'il y a eu certaine question comment créer un code d'activation pour une base ... j'ai ai créer un et il fonctionne excepté qu'il n'est pas crypté mais ca ajoute un semblant de professionaliste comment je pourrait le poster .... du meme coup peut-être tu pourrait me mettre sur une piste de comment créer une routine pour générer se dit code d'activation

  13. #13
    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
    Finalement j'ai fait quelques test et ca me donne en bout de compte incompaibilité de type ....

  14. #14
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Je pense que pour ton code d'activation tu auras beaucoup de retours des lecteurs. En effet c'est un sujet souvent abordé.

    Concernant ton problème c'est étrange.

    Ton champ est bien un champ texte ?

    Cordialement,

  15. #15
    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 oui ces bien un champ texte ... je comprend pas moi non plus

    plus précisément la liste fait une requête qui est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT tbl_secouriste.IDsecouriste, tbl_secouriste.Nom_secouriste, tbl_secouriste.alias_secouriste FROM tbl_secouriste ORDER BY tbl_secouriste.IDsecouriste;

  16. #16
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 081
    Points : 24 724
    Points
    24 724
    Par défaut
    Tu éventuellement me poster ta base si tu souhaites que je regarde.

    Tu peux me contacter en MP si tu ne veux pas la poster sur le forum.

Discussions similaires

  1. [MySQL] Récupérer variable avec espaces dans une liste déroulante
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/09/2007, 04h01
  2. Réponses: 5
    Dernier message: 01/06/2007, 15h20
  3. [Conception] Récupèrer une variable dans une liste déroulante
    Par olivier94 dans le forum PHP & Base de données
    Réponses: 22
    Dernier message: 21/02/2007, 13h12
  4. Réponses: 2
    Dernier message: 02/08/2006, 00h24
  5. [FORMULAIRE] affichage selon le choix dans une liste déroulante.
    Par gailup dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/06/2006, 15h58

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