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 :

Comment simuler une ListBox avec une TextBox, une requête et un Formulaire continu ? [AC-2003]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Points : 16
    Points
    16
    Par défaut Comment simuler une ListBox avec une TextBox, une requête et un Formulaire continu ?
    Lorsque j'ouvre le formulaire d'une Liste clients, via la requête :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT numclient, nomClient FROM Clients

    conjointement au Formulaire "fmClients" dont la propriété "Affichage par défaut :" correspond à "Formulaires Continus"

    j'obtiens bien la Liste des Clients enregistrés dans la table Clients.

    Or je souhaite utiliser la TextBox nommée "Sel_Client" comme activateur de filtre sur le champ "nomClient".

    1. Si j'associe l'événement "OnChange" à la TextBox "Sel_Client" et à la clause WHERE : nomClient Like "'*" & Sel_Client & "*'" (propriété "Filter" et méthode "FilterOn"), ma requête agit avec un décalage retardé de 1 caractère :

    Exemple :
    Si je saisis "DU", la requête filtre sur "D",
    si je saisis "DUP", la requête filtre sur "DU", et enfin
    si je saisis "DUPONT", la requête filtre sur "DUPON".

    2. Si j'associe l'événement "OnKeyPress" à la TextBox "Sel_Client", les résultats des requêtes filtrées correspondent exactement au valeurs saisies, sauf que :
    si je saisis "DUP", je saisis le "D", puis le "U" qui remplace le "D", et enfin le "P" qui remplace le "U".

    Comment faire pour que dans cette dernière solution le champ "Sel_Client" conserve l'affichage intégral de la solution ? Soit "DUP" et non pas seulement "P".

    Merci pour votre aide.

  2. #2
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Un piste peut-être :

    En utilisant l'évènement OnKeyPress : concaténer le résultat saisi dans une variable et utiliser cette variable dans la clause WHERE à la place de Sel_Client

    Bonne continuation

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/10/2013, 12h12
  2. [XL-2003] Filtrer une Listbox avec un TextBox
    Par pomdeterfrite dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/07/2011, 11h42
  3. Réponses: 9
    Dernier message: 12/08/2006, 13h01
  4. Réponses: 12
    Dernier message: 22/06/2006, 12h09
  5. Réponses: 6
    Dernier message: 22/05/2006, 16h16

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