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

Discussion: Requête dans une liste déroulante [AC-2016]

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut Requête dans une liste déroulante

    Bonjour,

    je cherche à savoir s'il est possible d'avoir une liste déroulante et à l’intérieur de cette zone de liste déroulante avoir mes noms de requêtes et qui s’exécute lorsque je sélectionné une requête et que je clique sur un bouton "VALIDER" ?
    J'ai essayé plusieurs solution, par des requêtes paramétrés, les options de liste déroulante ou par des macro, je n'ai pas pu avoir ce que je souhaite.

    Merci pour votre aide.

  2. #2
    Membre chevronné Avatar de hyperion13
    Homme Profil pro
    Calot120 - Enseignant Post Bac
    Inscrit en
    octobre 2007
    Messages
    1 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Calot120 - Enseignant Post Bac
    Secteur : Enseignement

    Informations forums :
    Inscription : octobre 2007
    Messages : 1 335
    Points : 2 046
    Points
    2 046

    Par défaut

    Salut
    Pour alimenter une combobox de la liste des req de votre base de données utilisez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT MsysObjects.Name
    FROM MsysObjects
    WHERE (((MsysObjects.Name) Not Like "Msys*" And (MsysObjects.Name) Not Like "~*") AND ((MsysObjects.Type)=5))
    ORDER BY MsysObjects.Name;
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    GMT+4 - 21°19'18" S - 055°25'32" E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse est pertinente. N'oubliez pas svp de clôturer le sujet en cliquant sur

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    Merci étant donné que ça marche parfaitement, mais cela ne correspond pas vraiment à ce que je recherche dans la mesure où cela ajoute la totalité des requêtes, comment je pourrai faire afin de sélectionner qu'une partie des requête parmi l'ensemble ?

  4. #4
    Membre chevronné Avatar de hyperion13
    Homme Profil pro
    Calot120 - Enseignant Post Bac
    Inscrit en
    octobre 2007
    Messages
    1 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Calot120 - Enseignant Post Bac
    Secteur : Enseignement

    Informations forums :
    Inscription : octobre 2007
    Messages : 1 335
    Points : 2 046
    Points
    2 046

    Par défaut

    listez le nom des req à exclure dans critères
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    GMT+4 - 21°19'18" S - 055°25'32" E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse est pertinente. N'oubliez pas svp de clôturer le sujet en cliquant sur

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    J’apprécie l'aide que tu me fournis, mais lister le nom de 20 requêtes pour 5 formulaires différents, ça risque d'être assez long. Je ne sais pas s'il y a une autre solution plus optimiser, s'il y en a une je vous en serais très reconnaissant.

    PS : Je dois utiliser quel genre de bouton pour que, lorsque je sélectionne le nom de ma requête dans ma zone de liste déroulante, elle s'exécute ?
    Cela doit être très simple, mais comme je débute, je me pose des questions assez stupide.

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    Si vous avez des idées je suis toujours a la recherche d'aide, merci

  7. #7
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    4 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 4 271
    Points : 7 295
    Points
    7 295

    Par défaut

    bonsoir,
    seules les requêtes action (ajout, suppression, mise à jour ..) peuvent être exécutées dans l'environnement VBA.
    Il faut ajouter dans les critères:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Flags] between 32 and 96
    dans la requête donnée par hyperion13.

    un exemple de code :
    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
    Private Sub VALIDER_Click()
    ' Executer une requête action
    Dim strNomReq As String
    Dim boIsOnError As Boolean
     
    strNomReq = Me.Zonedeliste.Column(0)
     
    On Error GoTo Err_Execute
    ' Exécution de la sélection
    CurrentDb.Execute strNomReq, dbFailOnError
    On Error GoTo 0
     
    ' si pas d'erreur d'exécution, message d'information
    If Not boIsOnError Then MsgBox "la requête " & strNomReq & " s'est correctement exécutée.", vbInformation
    Exit Sub
     
    Err_Execute:
         ' Affichage des erreurs d'exécution de la requête
         If DBEngine.Errors.Count > 0 Then
            boIsOnError = True
            For Each errLoop In DBEngine.Errors
                MsgBox "Erreur n°: " & errLoop.Number & vbCr & errLoop.DESCRIPTION, vbCritical
            Next errLoop
         End If
     
         Resume Next
     
    End Sub
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    Or, je ne veux ajouter aucune requête action, ce n'est certainement pour cela que votre code vba ne m'ajouter aucune requête sur ma zone de liste.
    Veuillez faire grâce de mon incompétence sur ce logiciel, mais en reprenant la requête initiale de hyperion13, cela fonctionnait parfaitement, mais comment et où ajouter les critères pour ne sélectionner qu'une partie des requêtes que je souhaite.

    Et je repose également la même question ; à savoir je dois utiliser quel genre de bouton pour que, lorsque je sélectionne le nom de ma requête dans ma zone de liste déroulante, elle s'exécute ?

  9. #9
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    4 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 4 271
    Points : 7 295
    Points
    7 295

    Par défaut

    bonjour,
    mais en reprenant la requête initiale de hyperion13, cela fonctionnait parfaitement
    qu'est-ce qui fonctionne parfaitement ?
    l'affichage des requêtes dans la liste ? oui, certainement.
    l'exécution des requêtes sélection ? là, par contre, je ne pense pas.
    mais comment et où ajouter les critères pour ne sélectionner qu'une partie des requêtes que je souhaite.
    il faut ajouter dans la clause WHERE le nom des requêtes à exclure soit par le nom entier, soit par une partie du nom:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT MsysObjects.Name
    FROM MsysObjects
    WHERE (((MsysObjects.Name) Not Like "Msys*" And (MsysObjects.Name) Not Like "~*" 
    And (MsysObjects.Name) <> "NomRequêteAExcure" 
    And (MsysObjects.Name) Not Like "NomRequêteCommencantPar*") 
    And (MsysObjects.Name) Not Like "*NomRequêteContenant*") 
    AND ((MsysObjects.Type)=5))
    ORDER BY MsysObjects.Name;
    Et je repose également la même question ; à savoir je dois utiliser quel genre de bouton pour que, lorsque je sélectionne le nom de ma requête dans ma zone de liste déroulante, elle s'exécute ?
    Encore une fois, mon code montre comment exécuter les requêtes et je le redis: on ne peut pas exécuter des requêtes si elles ne sont pas de type action.
    Pour les requêtes de type sélection, il faut passer par un sous-formulaire en mode feuille de données pour pouvoir les afficher à l'écran.
    Je te joins une base en exemple:
    AffichageRequetes.rar
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  10. #10
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    En effet, et un grand merci, il y a eu une grande avancée dans ce que je souhaite, je bloque maintenant sur l'affichage de celle-ci, je ne vois pas trop comment créer un sous-formulaire en mode feuille de donnée, est-ce l'unique solution ? (même si elle me convient parfaitement) Etant donné que je vois pas très bien comment avez-vous fait dans l'exemple de votre BD.
    Mais j'aurais également voulu savoir si mettre un bouton était possible afin qu'elle ouvre directement la requête, enfin celle que je choisis dans la liste déroulante ?

  11. #11
    Membre chevronné Avatar de hyperion13
    Homme Profil pro
    Calot120 - Enseignant Post Bac
    Inscrit en
    octobre 2007
    Messages
    1 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Calot120 - Enseignant Post Bac
    Secteur : Enseignement

    Informations forums :
    Inscription : octobre 2007
    Messages : 1 335
    Points : 2 046
    Points
    2 046

    Par défaut

    Salut
    Je pense que la lecture d'un tuto sur Access devrait être un préalable.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    GMT+4 - 21°19'18" S - 055°25'32" E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse est pertinente. N'oubliez pas svp de clôturer le sujet en cliquant sur

  12. #12
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    4 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 4 271
    Points : 7 295
    Points
    7 295

    Par défaut

    je bloque maintenant sur l'affichage de celle-ci, je ne vois pas trop comment créer un sous-formulaire en mode feuille de donnée, est-ce l'unique solution ? (même si elle me convient)
    - tu peux utiliser le sous-formulaire de la base, il est libre de droit
    - c'est la seule solution pour afficher une requête

    Mais suis d'abord le conseil d'hyperion13.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  13. #13
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    - ça ne m'explique toujours pas, à moins qu'il me faille maintenant un tuto sur l'anglais, comment créer un sous-formulaire à partir de plusieurs requêtes.
    - je bloque justement sur la réalisation du formulaire, je ne sais quoi ajouter lors de la création de mon sous-formulaire, comme vous avez pu le faire sur votre exemple.
    - mais imaginons que je ne souhaite pas l'afficher directement sur mon formulaire, mais que je veux tout simplement que la requête sélectionnée s'ouvre (à l'aide d'un bouton) comme si je double cliquer pour l'ouvrir, comment puis-je faire, j'ai essayé avec l'outil "OuvrirRequête" dans une macro, mais cela ne fait pas le résultat que je cherche.

  14. #14
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    4 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 4 271
    Points : 7 295
    Points
    7 295

    Par défaut

    dans ma base exemple remplace le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Me.Fille0.Visible = True
        Me.Fille0.SourceObject = "Requête." & Me.Lstrequetes.Column(0)
        Me.Fille0.SetFocus
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenQuery Me.Lstrequetes.Column(0), acViewNormal
    il y a aussi des tutos sur le site et en français
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  15. #15
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2018
    Messages : 11
    Points : 4
    Points
    4

    Par défaut

    Merci infiniment pour le temps passé à pouvoir m'éclairer, je vous en suis reconnaissant.

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 21/03/2018, 11h09
  2. Valeurs d'une requête dans une liste déroulante
    Par jasknky dans le forum Outils
    Réponses: 0
    Dernier message: 29/08/2008, 05h29
  3. Réponses: 2
    Dernier message: 21/10/2007, 00h56
  4. [SQL] Choix dans une liste déroulante issue d'une requête SQL
    Par Moustic74 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 01/06/2007, 14h06
  5. Réponses: 4
    Dernier message: 11/12/2006, 18h18

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