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 :

Lislte déroulante avec un contenu qui gère le "contient"


Sujet :

IHM

  1. #21
    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
    C'est pas top
    ???
    Ce que j'ai l'habitude de faire, et qui ne se voit absolument pas :
    - en création formulaire, je ramène le côté gauche de la zone de saisie de la liste vers le bouton/flèche. Je lui donne donc une largeur 0 pour la faire disparaître,
    - j'y mets à la place la nouvelle Zone de texte pour la saisie de la recherche,
    - dans propriétés/format/'Largeur liste' de la zone de liste, je remplace Auto par la largeur nécessaire à l'affichage des colonnes de la liste (= somme des Largeurs colonnes).

    Et voilà. Ni vu, ni connu !
    Et ça marche, et même sur n'importe quelle colonne puisqu'il suffit de mettre le 'Comme' sur le champ correspondant dans la requête.

    J'aurais bien voulu utiliser le code de micniv, mais je ne vois pas comment l'adapter dans le cas de plusieurs colonnes.

    Titi95
    Un problème bien posé est à moitié résolu

  2. #22
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 878
    Points : 4 754
    Points
    4 754
    Par défaut
    C'est vrai qu'à l'utilisation ce n'est pas si simple
    J'ai fait un exemple dans la base ci_jointe, lancez le formulaire F_contact

    Avant de faire [Entrée] sur la saisie du critere, voyez que la source le la liste combo est mise à jour.

    CDLT
    Fichiers attachés Fichiers attachés
    "Always look at the bright side of life." Monty Python.

  3. #23
    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 Micniv
    ... et lololebricoleur

    Pour lever toute éventuelle ambiguïté, la citation 'C'est pas top' dans mon dernier post ne s'adressait pas à ta proposition.
    Je reprenais simplement celle de lololebricoleur concernant ma solution.

    D'ailleurs, je suis toujours preneur d'une adaptation à une liste à plusieurs colonnes.

    J'en profite pour vous donner une image (partielle) du rendu sur un formulaire.
    Ici, le résultat de la recherche de '140' dans le texte du champ 'Référence' (sur 60 000 enregistrements).
    Le choix dans la liste permet d'afficher l'enregistrement souhaité sur celui-ci.

    Nom : Capture3.JPG
Affichages : 76
Taille : 30,1 Ko
    Bien cordialement,

    Titi95
    Un problème bien posé est à moitié résolu

  4. #24
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 878
    Points : 4 754
    Points
    4 754
    Par défaut
    cher titi, sache que la réflexion
    C'est vrai qu'à l'utilisation ce n'est pas si simple
    je me la faisais à moi meme, lors de la mise en pratique de la proposition que j'avais décrite plus avant. Donc aucune ambiguité.

    Si la recherche de la chaine saisie devait s'appliquer à plusieurs colonnes de la liste déroulante :
    Pas de pb pour garder le résultat dans la liste déroulante
    mais comment appliquer industriellemnt ce résultat sans un identifiant des records à afficher, dans l'une des colonnes ( en derniere position par ex°

    CDLT
    "Always look at the bright side of life." Monty Python.

  5. #25
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut Dsl de mon absence de réponse
    Merci pour votre aide,

    Merci pour le base exemple micniv, je vais l'étudier
    Merci pour l'astuce Titi95 ;-)
    Les solutions les plus simples sont les plus efficaces

  6. #26
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Bon,

    J'ai tenté de reproduire ton exemple micniv en reprenant pas à pas les paramètres et code de ton champ liste mais j'ai toujours le même bug
    c'est toujours la propriété text qui ne marche pas s2 = Nz(Me.ActiveControl.Text)
    Les solutions les plus simples sont les plus efficaces

  7. #27
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut J'ai trouvé
    J'ai trouvé la cause de mon bug

    En fait, c'est lié au remplissage de mon formulaire
    Si je met une requête (nom de requête ou code SQL) dans le paramètre source de mon formulaire, j'ai le bug
    Si je ne met rien, pas de bug !?
    Pourtant, le champ liste sur lequel je fais le test n'a aucun lien ni aucune incidence sur le contenu du formulaire
    C'est curieux non ?
    Les solutions les plus simples sont les plus efficaces

  8. #28
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Je reviens sur ton exemple micniv,

    Si je n'utilise qu'une colonne dans mon champ liste, ça fonctionne
    Mais dans mon cas, il me faut à la fois le libellé de l’enregistrement recherché (il peut y avoir des doublons) mais aussi son Id
    Si je modifie ton code pour gérer 2 colonnes, j'ai un bug
    "Vous avez essayé d'exécuter ne comprenant pas l'expression spécifiée "Id" comme une partie de la fonction d'agrégat"
    Les solutions les plus simples sont les plus efficaces

  9. #29
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2012
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2012
    Messages : 284
    Points : 284
    Points
    284
    Par défaut
    Bonjour,
    Au lieu de chercher dans 2 colonnes, tu ajoutes une colonne dans le RowSource de ta liste qui est la concaténation de tes 2 colonnes et tu cherches dans cette colonne sans l'afficher.
    Un travail qui plait est à moitié fait.

  10. #30
    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

    Si je modifie ton code pour gérer 2 colonnes, j'ai un bug
    En fait, tu souhaites rechercher simultanément dans 2 colonnes ou rechercher dans 1 colonne, mais afficher la liste avec plusieurs ?
    Dans le 1er cas regarde la proposition de Tortille, dans le 2ème regarde celle que j'ai présentée plus haut.
    Un problème bien posé est à moitié résolu

  11. #31
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Je souhaite chercher dans une colonne (de type texte et visible) et renvoyer la valeur d'une 2ème colonne qui elle cachée et de type numérique (c'est l'id de l'élément sélectionné)
    Les solutions les plus simples sont les plus efficaces

  12. #32
    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
    Donc tu souhaites une liste avec plusieurs champs requêtés, mais un seul affiché.
    Dans la liste tu mets les champs souhaités et pour cacher un champ tu passes sa largeur à 0 dans Propriétés/Format de la liste.

    Si, bien sûr, la recherche sur la liste que tu souhaitais faire fonctionne, (donc liste réduite)
    en utilisant l'événement 'Sur clic' de la liste, tu peux, par exemple :
    - récupérer sa valeur avec NomListe.Column(n), où tu remplaces n par le n° de la colonne de la liste correspondant à Id (attention : la numérotation des colonnes commence à 0)
    - aller directement à l'enregistrement choisi au clic, si sur ton formulaire tu veux afficher celui-ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        DoCmd.GoToRecord , , acGoTo, NomListe.ListIndex + 1   ' (la numérotation des enregistrements filtrés commence à 0)
    Un problème bien posé est à moitié résolu

  13. #33
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Merci Titi95,

    Mais le problème c'est qu’avant de pouvoir faire quoi que ce soit avec cette 2ème colonne, j'ai un bug dés que je l'ajoute
    Je l'ai d'ailleurs testé avec l'exemple de micniv et j'ai le même bug
    Donc mon soucis n'est pas d'ajouter la colonne ou de la cacher, je sais faire.
    Mais de rendre possible la recherche comme dans l'exemple de micniv tout en gérant 1 colonne de plus qui me donnera accès à l'id
    Les solutions les plus simples sont les plus efficaces

  14. #34
    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 de rendre possible la recherche comme dans l'exemple de micniv
    Je n'ai pas réussi non plus à l'aménager pour mon cas (liste à plusieurs colonnes, cachées ou visibles), d'où ma demande auprès de lui.

    Mais ma solution fonctionne.
    Un problème bien posé est à moitié résolu

  15. #35
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2012
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2012
    Messages : 284
    Points : 284
    Points
    284
    Par défaut
    j'ai modifié la base de Micniv, pour que la recherche se fasse sur le code et le nom.
    j'ai laissé la colonne code apparente car c'est plus parlant quand on tape le code.

    test filtre2.zip
    Un travail qui plait est à moitié fait.

  16. #36
    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
    Bonsoir à tous

    Avec la base test de Tortille je comprends pourquoi je ne peux pas adapter cette solution dans mon formulaire.
    Ce n'est pas grave, ma base tourne comme je le souhaite.
    Un problème bien posé est à moitié résolu

  17. #37
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Titi95,

    Qu'à tu compris stp ?
    Les solutions les plus simples sont les plus efficaces

  18. #38
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Tortille,

    Pourquoi faire la recherche sur le code et le nom stp ?
    Les solutions les plus simples sont les plus efficaces

  19. #39
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2012
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2012
    Messages : 284
    Points : 284
    Points
    284
    Par défaut
    Bonjour,

    Je croyais que tu voulais pouvoir filtrer sur le nom ou le code.

    Sinon la base de Micniv : test filtre.zip

    ne filtre que sur le nom, mais pour que soit plus convivial, il faut ouvrir la liste dès qu'il y a changement dans le filtre (Contient).
    Pour ça rajoutes dans la sub :

    Private Sub c_Cta_nom_Change()

    la ligne :

    Me.ActiveControl.Dropdown

    juste avant le :

    End Sub

    tu verras ainsi se réduire ta liste au fur et à mesure que tu précises ton filtre.

    Bien cordialement.
    Un travail qui plait est à moitié fait.

  20. #40
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Je suis paumé,

    Je n'ai pas réussi à transposer l'exemple de micniv à mon cas
    Alors que celui de Tortille fonctionne !?
    Pourtant, ils semblent super proches
    Au début, j'avais un problème avec la propriété text
    Micniv fournit un code qui règle ça
    Ensuite, c'est l'ajour de la 2ème colonne qui me posait problème et là, tortille le règle
    Qu'est ce que j'ai pas compris dans l'affaire ?

    Tortille, j'ai une différence de fonctionnement entre ton exemple et ma base :
    - Quand je commence la saisie d'un texte dans le champ de saisie et qu'il trouve une correspondance, mon champ la sélectionne et me fait disparaitre tous les autres choix alors que dans ta liste, aucune correspondance n'est sélectionnée automatiquement. Quel propriété gère ça stp ?

    Merci de votre aide à tous
    Les solutions les plus simples sont les plus efficaces

Discussions similaires

  1. Créer un header bar fixe avec un contenu qui change
    Par nunchaku31 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 22/09/2015, 17h02
  2. Div avec overflow: contenu qui dépasse sous FF
    Par cortex024 dans le forum Mise en page CSS
    Réponses: 9
    Dernier message: 12/10/2010, 13h30
  3. Remplir un menu déroulant avec le contenu d'un XML
    Par ibson76 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/09/2008, 15h57
  4. Requête union avec group by qui gère les 2 requêtes.
    Par juha dans le forum Langage SQL
    Réponses: 8
    Dernier message: 22/10/2007, 09h38
  5. [VBA-E]Erreur avec une combobox qui liste le contenu de cell
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 12h01

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