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 :

deux requêtes dans un seul bouton ?


Sujet :

Access

  1. #1
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut deux requêtes dans un seul bouton ?
    Bonjour,

    j'ai une interface contient deux Liste Déroulante (secteur et segment) et un bouton Recherche

    je veux que si l'utilisateur choisir une valeur dans la liste déroulante Secteur et clique sur le bouton recherche ça va exécuter la requête1 (la requête contient dans ces conditions les deux combobox) , et si l'utilisateur choisir une valeur dans la liste déroulante Segment ça va exécuter la requête2.

    comment faire ça ??



    Heeeeelp plzz

  2. #2
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Bonjour

    As-tu pensé à utiliser directement les événement 'Sur clic' (quand choix dans la liste) de chacune des deux listes, sans bouton ?

    Titi95

  3. #3
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    Citation Envoyé par titi95 Voir le message
    Bonjour

    As-tu pensé à utiliser directement les événement 'Sur clic' (quand choix dans la liste) de chacune des deux listes, sans bouton ?

    Titi95
    non avec le bouton bien sur

  4. #4
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Sauf cas particulier, il est préférable d'utiliser le clic sur la liste (un seul clic, pas de bouton).
    Fais l'essai.

  5. #5
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    Citation Envoyé par titi95 Voir le message
    Sauf cas particulier, il est préférable d'utiliser le clic sur la liste (un seul clic, pas de bouton).
    Fais l'essai.
    je suis obligée de faire un bouton de recherche , donc j'ai pas le choix

  6. #6
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Dans le cas où tu ne pourrais absolument pas te passer d'un bouton pour lancer les requêtes, tu peux utiliser ce code à mettre en début de procédure 'Sur clic' du bouton (à aménager)
    On teste sur le nom du contrôle qui est actif.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        Select Case ActiveControl.Name
            Case "NomListe1"
                'exécution requête1
                '...
            Case "NomListe2"
                'exécution requête2
                '...
            Case Else
                'traitement d'erreur si focus mis ailleurs entre choix liste et clic bouton
        End Select
    Titi95

  7. #7
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    le bouton c'est juste pour ouvrir le formulaire qui contient les résultats, dans la source de ce formulaire je mets le nom de la requête ..
    donc dans ce cas est-ce que je peux mettre ce code dans la source de formulaire ?

  8. #8
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Si je comprends bien, le clic sur le bouton va ouvrir LE formulaire (unique, le même dans les 2 cas) mais en se basant sur une requête ou sur l'autre, suivant quelle liste a été utilisée.
    Dans ce cas, tu ouvres le formulaire en indiquant la requête (code à mettre dans 'Sur clic du bouton):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Select Case ActiveControl.Name
            Case "NomListe1"
                DoCmd.OpenForm "NomFormulaire",,"requête1"
                '...
            Case "NomListe2"
                DoCmd.OpenForm "NomFormulaire",,"requête2"
                '...
            Case Else
                'traitement d'erreur si focus mis ailleurs entre choix liste et clic bouton
        End Select
    Titi95

  9. #9
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    j'ai fais ça mais ne marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Commande6_Click()
      Select Case ActiveControl.Name
        Case "num"
            DoCmd.OpenForm "Formulaire3"
        Case "ref"
            DoCmd.OpenForm "Formulaire2"
        Case Else
            'traitement
       End Select
    End Sub

  10. #10
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    mais ne marche pas
    Il faut regarder ce qui se passe.
    Après avoir mis un point d'arrêt ou un Stop dans le code, tu peux faire du pas-à-pas (touche F8)...
    Tu peux aussi mettre des Msgbox...

    Exemple en première ligne de ton code sur le bouton pour vérifier ce que renvoie ActiveControl.Name
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox ActiveControl.Name
    Attention au passage du focus sur un autre contrôle du formulaire entre choix dans une liste et clic sur bouton !
    Il faut traiter avec le Case Else.

    Je me permets donc d'insister à nouveau : si le bouton est systématiquement utilisé après choix (clic) dans une liste, et s'il ne sert qu'à ouvrir un formulaire ou l'autre, il faut le supprimer.
    Dans ce cas, tu mets les ouvertures de formulaire directement dans le 'Sur clic' de chaque liste. Et plus aucun pb de focus perdu.

    D'ailleurs je suis étonné, d'après ton dernier code, que tu es 2 formulaires différents. Alors bouton avec Select case inutile.

    (évite de reprendre tous les posts entiers en citation ; cela surcharge pour rien)

    Titi95

  11. #11
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    Merci pour vos réponse ,
    voilà le code correct :

    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
    Public lastCBclicked As String
     
    Private Sub Recherche_Click()
      Select Case lastCBclicked
        Case "Liste1"
            DoCmd.OpenForm "Formulaire1"
        Case "Liste2"
            DoCmd.OpenForm "Formulaire2"
        Case Else
            'traitement
       End Select
    End Sub
     
    Private Sub Liste1_Click()
        lastCBclicked = ActiveControl.Name
    End Sub
     
    Private Sub Liste2_Click()
        lastCBclicked = ActiveControl.Name
    End Sub

  12. #12
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Super !

    Je vois que tu as corrigé mon erreur grossière.

    Pendant mon absence de cet AM (sans ordinateur...) j'ai repensé à mon code qui ne fonctionnait. Effectivement, après le clic sur le bouton, le contrôle actif était... le bouton !!! et jamais les listes.
    Il fallait donc garder la trace de la liste ouverte.

    Vraiment, désolé. Mais j'étais dans ma solution sans bouton. Alors...

    Bon courage et à bientôt !

    N'oublie pas de cliquer sur RESOLU.

    Titi95

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

Discussions similaires

  1. Deux requêtes dans une seule requête, est-ce possible ?
    Par Stephane_br dans le forum Développement
    Réponses: 3
    Dernier message: 08/07/2011, 15h35
  2. appeller deux Fonctions JS dans un seul bouton
    Par zinat dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/07/2011, 15h22
  3. requête sql qui joint deux champs dans une seule chaine
    Par marwacht dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 24/05/2011, 10h29
  4. Deux COUNT dans une seule requête
    Par aya02 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 03/07/2010, 10h17
  5. [Oracle] Deux COUNT dans une seule requête
    Par EvilJajuka dans le forum Débuter
    Réponses: 5
    Dernier message: 30/09/2009, 11h00

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