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

IHM Discussion :

[Formulaire]Tri d'une requete grâce à des liste déroulante


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 6
    Points
    6
    Par défaut [Formulaire]Tri d'une requete grâce à des liste déroulante
    Bonjour,

    Je me tourne à nouveau vers vous pour une petite aide.
    Voilà j'ai une requete qui m'affiche tout le matériel informatique dont je dispose, cette requete est intégré dans un sous formulaire.
    J'aimerai qu'à partir du formulaire principal en choissisant un critère (par exemple marque) dans une liste déroulante un tri s'effectue sur ma requete qui se trouve dans le sous formulaire.

    Pour être plus clair je vous mets un screen :


    Je souhaite donc que mes liste déroulante agise sur ma requete pour faire un tri.
    Celà est-il possible et si oui comment?

    Merci pour votre aide

  2. #2
    Membre chevronné Avatar de Renardo
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 648
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 648
    Points : 2 019
    Points
    2 019
    Par défaut
    Tu peut lier ton formulaire a ton SousForm avec les liens pere et fils

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 6
    Points
    6
    Par défaut
    Et ca m'amène quoi de faire ca????
    Dans ma zone modifiable j'aurai par exemple le type de matériel, donc après comment faire quand je selectionne un type pc par exemple, pour que dans ma requete en dessous il ne me reste que le matériel type pc??

  4. #4
    Membre chevronné Avatar de Renardo
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 648
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 648
    Points : 2 019
    Points
    2 019
    Par défaut
    Tu peut aussi faire une recherche sur les ancien post comment(Filtre un sous Form)

  5. #5
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Bonjour,
    Cherches tu à trier ou à filtrer ton sous formulaire ? Personnellement, j'avais démarrer comme toi par ce type de présentation en me basant aussi sur le tuto de caféine dont beaucoup s'inspirent mais pour des raisons d'esthétique je suis passé à un formulaire continu basé sur une requête et dans lequel j'ai placé un contrôle indépendant au dessus de chaque champ... ce qui me permet de filtrer ces champs et au dessus de chaque champ une commande me permettant de trier... ce qui me permet de.. tout faire !!!

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 6
    Points
    6
    Par défaut
    Je cherche à trier mon sous-formulaire.
    Et effectivement j'ai trouvé le tutorial de cafeine que j'essaye de mettre en application. Le seul problème est que le tuto de cafeine ne se base que sur une table et moi j'aimerai afficher des infos de plusieurs tables (vu mon niveau en sql c'est dur )

    Si tu peux m'en dire plus sur ta méthode delcroixf ca m'aiderai stp.

    Merci d'avance

  7. #7
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Avec plaisir et en fonction des maigres connaissances que j'ai développées ici même :
    1) A partir de mes tables, je crée une requête avec les champs que je veux voir apparaître dans mon formulaire.
    2) Je crée un formulaire continu comme celui en pièce jointe (haut du formulaire)
    3) Au dessus de chaque champ je crée
    a)un bouton de commande qui me servira pour le tri ascendant ou descendant avec le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Champ1_Click()
    If TriChamp1 = False Then
    Me.OrderBy = "Champ1"
    Me.OrderByOn = True
    TriChamp1 = True
    Else
    Me.OrderBy = "Champ1 DESC"
    Me.OrderByOn = True
    TriChamp1 = False
    End If
    End Sub
    b) un contrôle indépendant Filter 1 qui me servira pour le filtre avec le code ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Filter1_change()
    Texte49.SetFocus
    Filter1.SetFocus
    FILTRE_FORM
    If Sum_filter Like "" Then
        Me.FilterOn = False
        Filter1.SetFocus
    Else
       Me.Filter = Sum_filter
       Me.FilterOn = True
    End If
    End Sub
    Mes filtres 1 jusqu'à 9 (pour ma base) sont liés les uns aux autres de manière à ce qu'ils puissent "s'additionner" ou s'enchaîner par le 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
    Private Sub FILTRE_FORM()
    Dim I As Integer
    Dim CTL As String
    Sum_filter = ""
    CTL = "Filter1"
    I = 1
        Do Until I = 10 'Nb de filtre + 1
                    If Me.Controls(CTL) <> "" Then
                        If Sum_filter <> "" Then Sum_filter = Sum_filter & " AND "
                        Sum_filter = Sum_filter & "([champ" & I & "] LIKE '" & Me.Controls(CTL) & "*')"
                    End If
            I = I + 1
            CTL = "Filter" & I
    Loop
    End Sub
    Il me semble que je t'ai tout donné

    Bon courage

    F
    Images attachées Images attachées  

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 6
    Points
    6
    Par défaut
    Merci pour ton aide delcroixf.
    Par contre j'ai pas trop compris à quoi te sert ton code b) Il sert à filtrer ta requete quand tu rentres des informations dans tes champs sous les bouton pour faire les tri ascendant....c'est bien ca?

    Si oui est-il possible de faire des champs avec une liste déroulante qui va chercher les valeurs que tu peux mettre dedans, par exemple pour tes villes de départ faire une liste déroulante avec toute tes villes.

    Merci encore pour ton aide

  9. #9
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Le code b) sert à "additionner" les filtres...
    Par exemple : tu recherches les missions en tapant les premières lettres d'une société dans le filtre mission et tu peux ensuite rechercher une ville bien particulière pour cette société... ainsi de suite...
    J'ai mis le filtre sur l'évènement "Sur change" afin de ne pas avoir à taper enter à chaque fois et d'être plsu dynamique dans la recherche..
    Le code b) est important sinon tu ne pourras filtrer qu'une colonne à la fois...
    Je n'ai pas opter pour les listes déroulantes car peu ergonomiques... Imagine que tu aies 150 villes tu vas dvoir dérouler ta liste ou taper de toutes les façons la ou les premières lettre pourr ala trouver.. autant garder les champs indépendants (ceux en dessous du bouton de commande de tri) C'est mon gout.
    Les boutons de commandes sont un tri... non des filtres... Ils te trient ta liste par exemple une fois que tu as filtré... Je suis entrain de travailler pour ne plus avoir de filtre sur une date mais sur un espace de temps. Je te communiquerai cela si tu as besoin de filtrer ou trier sur des périodes de temps..
    Bon courage

  10. #10
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Re bonjour,
    Un petit complément que je n'avais pas fait pour ma base mais utile aussi est un bouton de commande permettant d'annuler tous les filtres et de remettre vierge les contrôles indépendants... C'est pratique quand tu as sélectionné trois ou quatre contrôles afin d'éviter à supprimer leur contenu...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Annul_Filtre_Click()
    Dim I As Integer
    Dim CTL As String
    Sum_filter = ""
    CTL = "Filter1"
    I = 1
        Do Until I = 10 'Nb de filtre + 1
                    FilterOn = False
                    Me.Controls(CTL) = ""
            I = I + 1
            CTL = "Filter" & I
    Loop
    End Sub

Discussions similaires

  1. Faire une requete avec des listes
    Par Alec6 dans le forum XQUERY/SGBD
    Réponses: 2
    Dernier message: 25/12/2012, 10h32
  2. [FORMULAIRE]Tri sur une liste dans un formulaire Access
    Par roidesizzets dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 12/06/2009, 12h35
  3. Tri d'une requete sur des dates
    Par arnaud036 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 14/05/2009, 23h26
  4. Réponses: 6
    Dernier message: 19/11/2004, 16h52
  5. Creer une requete avec des LEFT JOIN et des GRO
    Par donbuz dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/09/2004, 15h53

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