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

Requêtes et SQL. Discussion :

Filtre unique sur plusieurs champs


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2011
    Messages : 91
    Points : 63
    Points
    63
    Par défaut Filtre unique sur plusieurs champs
    Bonjour,

    Dans un formulaire, je souhaite réaliser un filtre sur plusieurs champs en même temps.
    Dans l'exemple ci-dessous je pars du tableau d'origine :

    Réf1 Ref2 Réf3
    A123 A124 A123
    A231 A254 A512
    A256 A123 A321
    A598 A547 A123

    Pour arriver au résultat suivant : toutes les enregistrements, ou au moins la valeur A123 est présente, sont filtrés

    Réf1 Ref2 Réf3
    A123 A124 A123
    A256 A123 A321
    A598 A547 A123

    Actuellement je saisie la valeur A123 dans un champs X en en-tête de formulaire avec un filtre mais qui n'agit que sur une réf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Not IsNull(Me.X) And Me.X <> "" Then
    f = f & " AND Réf1 LIKE ""*" & Me.X & "*"""
    End If
    Merci de votre aide.

  2. #2
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 273
    Points : 6 582
    Points
    6 582
    Par défaut
    Salut
    A tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Not IsNull(Me.X) And Me.X <> "" Then
    f = "Ref1 LIKE '*Me.X*' OR Ref2 LIKE '*Me.X*' OR Ref3 LIKE '*Me.X*'"
    End If

  3. #3
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 756
    Points : 57 605
    Points
    57 605
    Billets dans le blog
    42
    Par défaut
    Bonsoir,

    Je ne suis pas sûr que ça marchera dans ce cas précis (c'est le like qui me cause soucis), mais en SQL on peut s'en sortir avec une clause IN :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT * FROM LaTable
    WHERE 'A123' IN (Ref1, Ref2, Ref3)

    Quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    f = f & " AND """ & me.X & """ IN (ref1, ref2, ref3)"

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

Discussions similaires

  1. Condition UNIQUE sur plusieurs champs
    Par knolz dans le forum SQL
    Réponses: 4
    Dernier message: 31/01/2013, 04h06
  2. [XSL] Filtre sur plusieurs champs par variable
    Par Skyou dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 19/09/2012, 20h37
  3. filtre sur plusieurs champs
    Par sebgaillard dans le forum Requêtes
    Réponses: 1
    Dernier message: 15/09/2009, 17h13
  4. liste unique sur plusieurs champs
    Par nicolas.poulain dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/01/2009, 08h47
  5. Filtres sur plusieurs champs/criteres en meme temps
    Par jeo13 dans le forum Macros et VBA Excel
    Réponses: 35
    Dernier message: 26/03/2008, 14h23

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