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 :

syntaxe SQL sur clause where


Sujet :

Requêtes et SQL.

  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 75
    Par défaut syntaxe SQL sur clause where
    Bonjour,

    Je suis en train d'essayer d'ouvrir un état qui sera filtrée grace à une sélection faite dans un contrôle "liste déroulante". Ca marche mais je n'arrive pas à filtrer sur plusieurs éléments de la liste en même temps (sélections multiples). Je veux par exemple que plusieurs noms soient sélectionnés dans la liste et quand j'appuie sur un bouton, un état s'ouvre avec les données de ces personnes sélectionnées.

    Voici 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
    16
    17
    Private Sub Commande40_Click()
        Dim strLstPersonnes As String
        Dim element As Variant
     
        'Vérifier qu'un nom a été sélectionné sinon tout imprimé
        If Me.LstPersonne.ItemsSelected.Count = 0 Then
            MsgBox "Vous allez imprimer les étiquettes pour l'ensemble du personnel !", vbExclamation
            DoCmd.OpenReport "EtiquettesAdresse", acViewPreview
        End If
     
        For Each element In LstPersonne.ItemsSelected
        strLstPersonnes = strLstPersonnes & LstPersonne.ItemData(element)    Next
        strLstPersonnes = Left(strLstPersonnes, Len(strLstPersonnes) - 1)
     
        DoCmd.OpenReport "EtiquettesAdresse", acViewPreview, , "LISTPER2.[NOM]='" & strLstPersonnes & "'"
     
    End Sub
    Merci pour votre aide.

  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 121
    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 121
    Par défaut
    Bonjour,

    Utilise In() au lieu de =

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 186
    Par défaut
    et sépare chaque élément par , et mets les entre '
    [Access] Les bases du débogage => ici

  4. #4
    Membre averti
    Inscrit en
    Février 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 75
    Par défaut
    Comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenReport "EtiquettesAdresse", acViewPreview, , LISTPER2.[NOM]IN(strLstPersonnes)

  5. #5
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 186
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For Each element In LstPersonne.ItemsSelected
        strLstPersonnes = strLstPersonnes & "'" & LstPersonne.ItemData(element) & "', "
    Next
    strLstPersonnes = Left(strLstPersonnes, Len(strLstPersonnes) - 2)
     
    DoCmd.OpenReport "EtiquettesAdresse", acViewPreview, , "LISTPER2.[NOM] in (" & strLstPersonnes & ")"
    [Access] Les bases du débogage => ici

  6. #6
    Membre averti
    Inscrit en
    Février 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 75
    Par défaut
    C'est vraiment génial !!!

    Merci beaucoup pour votre aide toujours aussi précieuse.

    Cordialement,

    Fred

Discussions similaires

  1. Pb de requete SQL avec clauses WHERE dans une procédure stockée
    Par CocoLeNain dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 11/06/2010, 23h48
  2. [MySQL] Requête SQL avec clause where max
    Par younes371 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/12/2009, 09h21
  3. auto-completion sur clause where
    Par guyrnaf dans le forum Sql Developer
    Réponses: 15
    Dernier message: 22/08/2007, 19h38
  4. [SQL]Action sur clause where
    Par J_Yohan dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 03/04/2007, 10h55
  5. [SQL] problème clause where
    Par salirose dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 13/09/2006, 14h15

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