Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Valeur d'un champ en cours de frappe

6 réponses
Avatar
StarFab
Bonjour à tous,
Je suis sous Access XP.
Dans un formulaire je mets une zone de texte indépendante d'aide à la recherche "MaRecherche" :
je voudrais qu'à chaque frappe dans ce champ, une zone de liste "MaListedeNoms" se mette à jour en
fonction.

MaListedeNom.Contenu =
SELECT [Nom] FROM MaTable WHERE [Nom] Like [Forms]!MonFormulaire!MaRecherche & "*"

Mon idée est de mettre le code suivant dans un évènement du champ "Recherche" mais ça ne marche pas
:
Forms!MonFormulaire!MaListedeNoms.Requery

J'ai essayé "Sur Modification" et "Sur touche appuyée" mais dans tous les cas, la valeur du champ
"Recherche" n'est jamais la valeur en cours de frappe mais la dernière valeur du champ.

Donc :
Comment faire pour récupérer dans un code VBA la chaine de caractère en cours de frappe dans une
zone de texte "indépendant" d'un formulaire ?
Car Forms!MonFormulaire!MonChamp.valeur ne renvoit pas le texte en cours de frappe !

Merci beaucoup de votre aide et n'hésitez pas à me dire si c'est pas clair.
Fabien

6 réponses

Avatar
Raymond [mvp]
Bonjour.

Donc :
Comment faire pour récupérer dans un code VBA la chaine de caractère en
cours de frappe dans une

zone de texte "indépendant" d'un formulaire ?


Il faut tester la propriété Text dans l'événement KeyUp, ce qui permet en
plus de connaître la touche enfoncée(mettre à oui l'aperçu des touches)

Private Sub Texte1_KeyUp(KeyCode As Integer, Shift As Integer)
X = Me.Texte1.Text

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"StarFab" a écrit dans le message de
news:
Bonjour à tous,
Je suis sous Access XP.
Dans un formulaire je mets une zone de texte indépendante d'aide à la
recherche "MaRecherche" :

je voudrais qu'à chaque frappe dans ce champ, une zone de liste
"MaListedeNoms" se mette à jour en

fonction.

MaListedeNom.Contenu > SELECT [Nom] FROM MaTable WHERE [Nom] Like
[Forms]!MonFormulaire!MaRecherche & "*"


Mon idée est de mettre le code suivant dans un évènement du champ
"Recherche" mais ça ne marche pas

:
Forms!MonFormulaire!MaListedeNoms.Requery

J'ai essayé "Sur Modification" et "Sur touche appuyée" mais dans tous les
cas, la valeur du champ

"Recherche" n'est jamais la valeur en cours de frappe mais la dernière
valeur du champ.


Donc :
Comment faire pour récupérer dans un code VBA la chaine de caractère en
cours de frappe dans une

zone de texte "indépendant" d'un formulaire ?
Car Forms!MonFormulaire!MonChamp.valeur ne renvoit pas le texte en cours
de frappe !


Merci beaucoup de votre aide et n'hésitez pas à me dire si c'est pas
clair.

Fabien


Avatar
Pierre CFI [mvp]
salut à ceux qui effectivement ne travaillent que lors de la féte du travail :o))
tu dis Text , je dirais Value

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Raymond [mvp]" a écrit dans le message de news:
Bonjour.

Donc :
Comment faire pour récupérer dans un code VBA la chaine de caractère en
cours de frappe dans une

zone de texte "indépendant" d'un formulaire ?


Il faut tester la propriété Text dans l'événement KeyUp, ce qui permet en
plus de connaître la touche enfoncée(mettre à oui l'aperçu des touches)

Private Sub Texte1_KeyUp(KeyCode As Integer, Shift As Integer)
X = Me.Texte1.Text

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"StarFab" a écrit dans le message de
news:
Bonjour à tous,
Je suis sous Access XP.
Dans un formulaire je mets une zone de texte indépendante d'aide à la
recherche "MaRecherche" :

je voudrais qu'à chaque frappe dans ce champ, une zone de liste
"MaListedeNoms" se mette à jour en

fonction.

MaListedeNom.Contenu > > SELECT [Nom] FROM MaTable WHERE [Nom] Like
[Forms]!MonFormulaire!MaRecherche & "*"


Mon idée est de mettre le code suivant dans un évènement du champ
"Recherche" mais ça ne marche pas

:
Forms!MonFormulaire!MaListedeNoms.Requery

J'ai essayé "Sur Modification" et "Sur touche appuyée" mais dans tous les
cas, la valeur du champ

"Recherche" n'est jamais la valeur en cours de frappe mais la dernière
valeur du champ.


Donc :
Comment faire pour récupérer dans un code VBA la chaine de caractère en
cours de frappe dans une

zone de texte "indépendant" d'un formulaire ?
Car Forms!MonFormulaire!MonChamp.valeur ne renvoit pas le texte en cours
de frappe !


Merci beaucoup de votre aide et n'hésitez pas à me dire si c'est pas
clair.

Fabien






Avatar
Raymond [mvp]
Et voilà, encore un qui travaille pour la 1ere fois le 1er mai et qui n'a
pas regardé la solution proposé.
Sur Key_Up, le champ n'est pas passé dans les événements de sortie , donc la
propriété value n'est pas encore disponible, mais la propriété Text est
disponible elle, car elle contient la valeur actuelle du champ (on change)
qui bouge à chaque frappe.

Tu dis value , je dirais text.
teste la séquence tu verras.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Pierre CFI [mvp]" a écrit dans le message de
news:
salut à ceux qui effectivement ne travaillent que lors de la féte du
travail :o))

tu dis Text , je dirais Value

--
Pierre CFI


Avatar
Pierre CFI [mvp]
c'est pas joli joli de m'écraser de ta science (Raymond la science, pas tout jeune çà) :o))

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Raymond [mvp]" a écrit dans le message de news:
Et voilà, encore un qui travaille pour la 1ere fois le 1er mai et qui n'a
pas regardé la solution proposé.
Sur Key_Up, le champ n'est pas passé dans les événements de sortie , donc la
propriété value n'est pas encore disponible, mais la propriété Text est
disponible elle, car elle contient la valeur actuelle du champ (on change)
qui bouge à chaque frappe.

Tu dis value , je dirais text.
teste la séquence tu verras.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Pierre CFI [mvp]" a écrit dans le message de
news:
salut à ceux qui effectivement ne travaillent que lors de la féte du
travail :o))

tu dis Text , je dirais Value

--
Pierre CFI






Avatar
Raymond [mvp]
Pour une fois que je peux te reprendre je ne vais pas m'en priver. ce
plaisir est tellement rare.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Pierre CFI [mvp]" a écrit dans le message de
news:
c'est pas joli joli de m'écraser de ta science (Raymond la science, pas
tout jeune çà) :o))


--
Pierre CFI


Avatar
StarFab
Effectivement ça marche !
Il faut utiliser la propriété ".text" du champ sur l'évènement "key up" (touche relachée) sinon ça
ne marche pas.
En tout cas j'ai essayé plein de combinaisons de propriétés et d'évènements et ça n'a pas marché.
Acces c'est sympa, ça marche bien mais faut pas se gourrer d'évènement ni de propriété sinon au
revoir !
Merci,
Fabien


"Raymond [mvp]" a écrit dans le message de
news:
Et voilà, encore un qui travaille pour la 1ere fois le 1er mai et qui n'a
pas regardé la solution proposé.
Sur Key_Up, le champ n'est pas passé dans les événements de sortie , donc la
propriété value n'est pas encore disponible, mais la propriété Text est
disponible elle, car elle contient la valeur actuelle du champ (on change)
qui bouge à chaque frappe.

Tu dis value , je dirais text.
teste la séquence tu verras.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Pierre CFI [mvp]" a écrit dans le message de
news:
salut à ceux qui effectivement ne travaillent que lors de la féte du
travail :o))

tu dis Text , je dirais Value

--
Pierre CFI