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 :

Paramétrer un critère de requête par la sélection multiple d'une ListBox


Sujet :

IHM

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

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Paramétrer un critère de requête par la sélection multiple d'une ListBox
    Actuellement, j'utilise la procédure suivante pour renseigner une TextBox "txt_liste" à partir de la sélection dans la ListBox "lst_enseigne".

    Private Sub cmd_comparatif_enseigne_Click()
    On Error GoTo Erreur

    Dim strEnseigne0 As String, strEnseigne As String, varData As Variant, i As Byte
    i = 1

    For Each varData In Me.lst_enseigne.ItemsSelected
    If i = 1 Then
    strEnseigne = "In(""" & Me.lst_enseigne.ItemData(varData) & """"
    Else
    strEnseigne = strEnseigne & ";""" & Me.lst_enseigne.ItemData(varData) & """"
    End If
    i = i + 1
    Next
    strEnseigne = strEnseigne & ")"
    Me.txt_liste.Value = strEnseigne
    DoCmd.OpenQuery "r_enseigne_moy_multi"

    Fin:
    Exit Sub

    Erreur:
    MsgBox Err.Number & " " & Err.Description
    Resume Fin

    End Sub


    Et je paramètre la requête "r_enseigne_moy_multi" avec :

    [Formulaires]![f_Menu]![txt_liste]

    Mais je pense me heurter à un problème de séparateur...car la feuille de réponse est vide !

    Patrick

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Citation Envoyé par passe
    Mais je pense me heurter à un problème de séparateur...car la feuille de réponse est vide !
    Patrick
    Ta feuille est vide parce que rien n'est choisi dans ta liste.

    D'autre part j'espères que tu ne veux pas comparer par rapport à toutes les valeurs de ta liste. Car
    [Formulaires]![f_Menu]![txt_liste]
    ne compare que sur une valeur que tu doit choisir en plus.

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

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Rappel : la TextBox est alimentée par une procédure qui concataine une chaîne de caractères à partir des items sélectionnés dans la ListBox.

    Une sélection multiple est bien réalisée et, si les items Toto, Titi et Tata sont sélectionnés dans la ListBox, après exécution de la procédure la TextBox (txt_liste) contient In("Toto";"Titi";"Tata").

    La table interrogée contient bien des enregistrements avec Toto, Titi, Tata.

    Si l'expression [Formulaires]![f_Menu]![txt_liste] est utilisé pour créer un champ calculé dans une requête elle affiche bien In("Toto";"Titi";"Tata").

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Citation Envoyé par passe
    ...(txt_liste) contient In("Toto";"Titi";"Tata").
    1 - remplace les ; par des ,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    In("Toto", "Titi", "Tata")
    2 - peut être que le In doit être utiliser comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    In [Formulaires]![f_Menu]![txt_liste]
    avec txt_liste contenant ("Toto", "Titi", "Tata").

  5. #5
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    J'ai l'impression qu'on ne peut pas utiliser un paramètre avec l'opérateur IN dans une requête paramètrée.

    A+

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

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Si pas de prédicat In, dois-je envisager une solution avec des Ou ?

  7. #7
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Essaie une restriction du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    InStr(1,[Formulaires]![f_Menu]![txt_liste],"""" & [LeChampAtester] & """")>0
    dans ta requête

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

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Parfait, cette fonction me donne toute satisfaction.
    Merci pour ton aide

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

Discussions similaires

  1. [WD17] Sélection Multiple dans une COMBO par programmation
    Par droliprane dans le forum WinDev
    Réponses: 5
    Dernier message: 25/04/2014, 15h19
  2. Sélection multiple dans une listbox
    Par habasque dans le forum Tcl/Tk
    Réponses: 4
    Dernier message: 08/04/2014, 13h30
  3. [XL-2010] Sélection multiple dans une listbox
    Par Kutoh dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/12/2013, 14h35
  4. Réponses: 4
    Dernier message: 10/12/2007, 22h10
  5. [Débutant] Sélection multiples dans une Listbox
    Par eraim dans le forum Access
    Réponses: 4
    Dernier message: 15/10/2005, 03h21

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