OVH Cloud OVH Cloud

Champ texte - Filtre

5 réponses
Avatar
Jennam
Bonjour,

Une petiote question de débutant qui ne devrait pas prendre trop de temps :)
Voilà, j'ai un formulaire basé sur une table "chantier". Quand je passe d'un
enregistrement à un autre, le champ "nomchantier" varie en fonction du
chantier concerné. Normal.

Maintenant, au lieu de parcourir séquentiellement tous les chantiers pour
effectuer des saisies, je voudrais pouvoir saisir directement le nom du
chantier dans ce champ texte avec le comportement suivant :

J'ai 4 chantiers : ABCD, DEFG, DEHI, LMNO

Je voudrais, en tapant A dans le champ texte, voir apparaitre le chantier
ABCD
Je voudrais, en tapant D dans le champ texte, voir apparaitre le chantier
DEFG
Je voudrais, en tapant DE dans le champ texte, voir apparaitre le chantier
DEFG
Je voudrais, en tapant DEH dans le champ texte, voir apparaitre le chantier
DEHI
Je voudrais, en tapant L dans le champ texte, voir apparaitre le chantier
LMNO etc...

Je veux juste faciliter la saisie par ce système ; en effet j'ai 250
chantiers et tout parcourir pour trouver le chantier "TMLN", c'est pas
évident :)
Peut-être qu'il y a d'autres pistes ou techniques à envisager ?

Merci d'avance.

Rob

5 réponses

Avatar
Raymond [mvp]
Bonjour.

la solution la plus pratique serait de placer une liste déroulante contenant
tous les chantiers par ordre alphabétique. dans cette liste déroulante,
grâce à la propriété "auto étendre" access affiche le premier nom qu'il
trouve dans la liste avec les initiales composées.
pour changer ton champ texte en liste, utiliser le menu format / remplacer
par / liste déroulante
remplir la propriété contenu .
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jennam" a écrit dans le message de news:
41f7aa28$0$18830$
Bonjour,

Une petiote question de débutant qui ne devrait pas prendre trop de temps
:)
Voilà, j'ai un formulaire basé sur une table "chantier". Quand je passe
d'un
enregistrement à un autre, le champ "nomchantier" varie en fonction du
chantier concerné. Normal.

Maintenant, au lieu de parcourir séquentiellement tous les chantiers pour
effectuer des saisies, je voudrais pouvoir saisir directement le nom du
chantier dans ce champ texte avec le comportement suivant :

J'ai 4 chantiers : ABCD, DEFG, DEHI, LMNO

Je voudrais, en tapant A dans le champ texte, voir apparaitre le chantier
ABCD
Je voudrais, en tapant D dans le champ texte, voir apparaitre le chantier
DEFG
Je voudrais, en tapant DE dans le champ texte, voir apparaitre le chantier
DEFG
Je voudrais, en tapant DEH dans le champ texte, voir apparaitre le
chantier
DEHI
Je voudrais, en tapant L dans le champ texte, voir apparaitre le chantier
LMNO etc...

Je veux juste faciliter la saisie par ce système ; en effet j'ai 250
chantiers et tout parcourir pour trouver le chantier "TMLN", c'est pas
évident :)
Peut-être qu'il y a d'autres pistes ou techniques à envisager ?

Merci d'avance.

Rob





Avatar
Jennam
Merci bcp Raymond pour cet éclairage. Je vais essayer ça dès ce soir et voir
si cela me convient.

Bonne continuation.

"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

la solution la plus pratique serait de placer une liste déroulante
contenant

tous les chantiers par ordre alphabétique. dans cette liste déroulante,
grâce à la propriété "auto étendre" access affiche le premier nom qu'il
trouve dans la liste avec les initiales composées.
pour changer ton champ texte en liste, utiliser le menu format / remplacer
par / liste déroulante
remplir la propriété contenu .
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jennam" a écrit dans le message de news:
41f7aa28$0$18830$
Bonjour,

Une petiote question de débutant qui ne devrait pas prendre trop de
temps


:)
Voilà, j'ai un formulaire basé sur une table "chantier". Quand je passe
d'un
enregistrement à un autre, le champ "nomchantier" varie en fonction du
chantier concerné. Normal.

Maintenant, au lieu de parcourir séquentiellement tous les chantiers
pour


effectuer des saisies, je voudrais pouvoir saisir directement le nom du
chantier dans ce champ texte avec le comportement suivant :

J'ai 4 chantiers : ABCD, DEFG, DEHI, LMNO

Je voudrais, en tapant A dans le champ texte, voir apparaitre le
chantier


ABCD
Je voudrais, en tapant D dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DE dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DEH dans le champ texte, voir apparaitre le
chantier
DEHI
Je voudrais, en tapant L dans le champ texte, voir apparaitre le
chantier


LMNO etc...

Je veux juste faciliter la saisie par ce système ; en effet j'ai 250
chantiers et tout parcourir pour trouver le chantier "TMLN", c'est pas
évident :)
Peut-être qu'il y a d'autres pistes ou techniques à envisager ?

Merci d'avance.

Rob









Avatar
Jennam
En fait je me suis peut être mal exprimé...
Mon formulaire est donc bien basé sur une table et en passant d'un
enregistrement à l'autre avec les petites flèches de bas du formulaire je
fais bien défiler les informations adéquates dans chaque champ. Je voudrais
ajouter une liste déroulante qui me permette d'atteindre directement un
enregistrement de ma table.
J'ai donc créé cette liste déroulante ou je veux faire apparaitre mes noms
de chantiers (que je pourrai éventuellement saisir grace à "auto étendre").
Cette liste a comme source : id_chantier en colonne 1 (0cm) et nom_chantier
en colonne 2 (visible). Je voudrais placer un bouton pour valider ma
sélection et atteindre l'enregistrement (la "fiche") désiré. Je sais déjà
faire ça en ouvrant un formulaire que je filtre :

DoCmd.OpenReport stDocName, acPreview, , "[id_chantier]=" & Me.liste

Mais je ne sais pas comment appliquer un filtre à un formulaire déjà ouvert
et lui demander d'atteindre l'enregistrement désiré...

Merci d'avance pour ceux qui s'intéresseront à mon problème ... et à ceux
qui pourront me donner des idées.

a+ Rob



"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

la solution la plus pratique serait de placer une liste déroulante
contenant

tous les chantiers par ordre alphabétique. dans cette liste déroulante,
grâce à la propriété "auto étendre" access affiche le premier nom qu'il
trouve dans la liste avec les initiales composées.
pour changer ton champ texte en liste, utiliser le menu format / remplacer
par / liste déroulante
remplir la propriété contenu .
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jennam" a écrit dans le message de news:
41f7aa28$0$18830$
Bonjour,

Une petiote question de débutant qui ne devrait pas prendre trop de
temps


:)
Voilà, j'ai un formulaire basé sur une table "chantier". Quand je passe
d'un
enregistrement à un autre, le champ "nomchantier" varie en fonction du
chantier concerné. Normal.

Maintenant, au lieu de parcourir séquentiellement tous les chantiers
pour


effectuer des saisies, je voudrais pouvoir saisir directement le nom du
chantier dans ce champ texte avec le comportement suivant :

J'ai 4 chantiers : ABCD, DEFG, DEHI, LMNO

Je voudrais, en tapant A dans le champ texte, voir apparaitre le
chantier


ABCD
Je voudrais, en tapant D dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DE dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DEH dans le champ texte, voir apparaitre le
chantier
DEHI
Je voudrais, en tapant L dans le champ texte, voir apparaitre le
chantier


LMNO etc...

Je veux juste faciliter la saisie par ce système ; en effet j'ai 250
chantiers et tout parcourir pour trouver le chantier "TMLN", c'est pas
évident :)
Peut-être qu'il y a d'autres pistes ou techniques à envisager ?

Merci d'avance.

Rob









Avatar
Hervé DUCARNE
Bonjour,
Le plus simple est de donner le focus à ta zone id_chantier dans le
formulaire et de rechercher l'enregistrement = à la zone de liste.
Ce qui donnereait :
Me!id_chantier.SetFocus
DoCmd.FindRecord Me!id_chantier

@+

"Jennam" a écrit dans le message de
news:41f8143a$0$24920$
En fait je me suis peut être mal exprimé...
Mon formulaire est donc bien basé sur une table et en passant d'un
enregistrement à l'autre avec les petites flèches de bas du formulaire je
fais bien défiler les informations adéquates dans chaque champ. Je
voudrais

ajouter une liste déroulante qui me permette d'atteindre directement un
enregistrement de ma table.
J'ai donc créé cette liste déroulante ou je veux faire apparaitre mes noms
de chantiers (que je pourrai éventuellement saisir grace à "auto
étendre").

Cette liste a comme source : id_chantier en colonne 1 (0cm) et
nom_chantier

en colonne 2 (visible). Je voudrais placer un bouton pour valider ma
sélection et atteindre l'enregistrement (la "fiche") désiré. Je sais déjà
faire ça en ouvrant un formulaire que je filtre :

DoCmd.OpenReport stDocName, acPreview, , "[id_chantier]=" & Me.liste

Mais je ne sais pas comment appliquer un filtre à un formulaire déjà
ouvert

et lui demander d'atteindre l'enregistrement désiré...

Merci d'avance pour ceux qui s'intéresseront à mon problème ... et à ceux
qui pourront me donner des idées.

a+ Rob



"Raymond [mvp]" a écrit dans le message
de

news:
Bonjour.

la solution la plus pratique serait de placer une liste déroulante
contenant

tous les chantiers par ordre alphabétique. dans cette liste déroulante,
grâce à la propriété "auto étendre" access affiche le premier nom qu'il
trouve dans la liste avec les initiales composées.
pour changer ton champ texte en liste, utiliser le menu format /
remplacer


par / liste déroulante
remplir la propriété contenu .
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jennam" a écrit dans le message de news:
41f7aa28$0$18830$
Bonjour,

Une petiote question de débutant qui ne devrait pas prendre trop de
temps


:)
Voilà, j'ai un formulaire basé sur une table "chantier". Quand je
passe



d'un
enregistrement à un autre, le champ "nomchantier" varie en fonction du
chantier concerné. Normal.

Maintenant, au lieu de parcourir séquentiellement tous les chantiers
pour


effectuer des saisies, je voudrais pouvoir saisir directement le nom
du



chantier dans ce champ texte avec le comportement suivant :

J'ai 4 chantiers : ABCD, DEFG, DEHI, LMNO

Je voudrais, en tapant A dans le champ texte, voir apparaitre le
chantier


ABCD
Je voudrais, en tapant D dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DE dans le champ texte, voir apparaitre le
chantier


DEFG
Je voudrais, en tapant DEH dans le champ texte, voir apparaitre le
chantier
DEHI
Je voudrais, en tapant L dans le champ texte, voir apparaitre le
chantier


LMNO etc...

Je veux juste faciliter la saisie par ce système ; en effet j'ai 250
chantiers et tout parcourir pour trouver le chantier "TMLN", c'est pas
évident :)
Peut-être qu'il y a d'autres pistes ou techniques à envisager ?

Merci d'avance.

Rob













Avatar
Raymond [mvp]
Mais je ne sais pas comment appliquer un filtre à un formulaire déjà
ouvert
et lui demander d'atteindre l'enregistrement désiré...


tu crées une liste déroulante avec l'assistant et tu choisis l'option 3 :
atteindre un enregistrement.
seule condition pour que l'option 3 apparaisse, il faut que le record source
soit une requête et non une clause select.

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


"Jennam" a écrit dans le message de news:
41f8143a$0$24920$
En fait je me suis peut être mal exprimé...
Mon formulaire est donc bien basé sur une table et en passant d'un
enregistrement à l'autre avec les petites flèches de bas du formulaire je
fais bien défiler les informations adéquates dans chaque champ. Je
voudrais
ajouter une liste déroulante qui me permette d'atteindre directement un
enregistrement de ma table.
J'ai donc créé cette liste déroulante ou je veux faire apparaitre mes noms
de chantiers (que je pourrai éventuellement saisir grace à "auto
étendre").
Cette liste a comme source : id_chantier en colonne 1 (0cm) et
nom_chantier
en colonne 2 (visible). Je voudrais placer un bouton pour valider ma
sélection et atteindre l'enregistrement (la "fiche") désiré. Je sais déjà
faire ça en ouvrant un formulaire que je filtre :

DoCmd.OpenReport stDocName, acPreview, , "[id_chantier]=" & Me.liste

Mais je ne sais pas comment appliquer un filtre à un formulaire déjà
ouvert
et lui demander d'atteindre l'enregistrement désiré...

Merci d'avance pour ceux qui s'intéresseront à mon problème ... et à ceux
qui pourront me donner des idées.

a+ Rob