OVH Cloud OVH Cloud

Liste déroulante

4 réponses
Avatar
JPG
Bonjour,
J'ai une liste déroulante qui affiche le nom d'une personne et stocke son
code dans une table.

Par exemple
Colonne 1 Colonne 2
DUP DUPONT
MAR MARTIN

Dans la table des collaborateurs, j'ai un champ [ACTIF] Oui/non pour décider
de rendre actif ou inactif ce collaborateur lors d'une prochaine saisie.
Dans la source de ma liste déroulante, j'ai donc filtré sur le champ ACTIF à
Oui.

Dans mon exemple je rends DUP inactif, mais je l'ai déja utilisé dans une
table et son code apparaît bien. Le problème c'est que son nom disparaît de
mon formulaire. Si le re-rends actif je le vois réapparaître.

Comment faire pour qu'il ne soit qu'inactif à la saisie ?

Merci beacoup pour votre aide (et à tout de suite pour un autre fil
croustillant lui aussi).

4 réponses

Avatar
Jessy Sempere
Bonjour

Je ne suis pas sûr d'avoir tout compris...
Si tu veux pouvoir lors de la saisie ne sélectionner que les personnes
active, il te suffit de faire une zone de liste modifiable "indépendante"
avec comme source une requête basée sur ta table collaborateur et comme
critère, Actif : Vrai.
Visiblement c'est ce que tu as fait...

Là où je ne comprends pas, c'est quand tu dis que ce que tu as déjà saisie
disparaît...
Je pense que tu as fait une table qui est liée à ta table collaborateur, et
que dans cette première, tu as fait une liste avec le filtre, si c'est le
cas, ton problème vient de là...

@+
Jessy Sempere
------------------------------------
Site @ccess : http://access.fr.free.fr/
Pour l''''efficacité de tous :
http://www.mpfa.info/
------------------------------------



Bonjour,
J'ai une liste déroulante qui affiche le nom d'une personne et stocke son
code dans une table.

Par exemple
Colonne 1 Colonne 2
DUP DUPONT
MAR MARTIN

Dans la table des collaborateurs, j'ai un champ [ACTIF] Oui/non pour décider
de rendre actif ou inactif ce collaborateur lors d'une prochaine saisie.
Dans la source de ma liste déroulante, j'ai donc filtré sur le champ ACTIF à
Oui.

Dans mon exemple je rends DUP inactif, mais je l'ai déja utilisé dans une
table et son code apparaît bien. Le problème c'est que son nom disparaît de
mon formulaire. Si le re-rends actif je le vois réapparaître.

Comment faire pour qu'il ne soit qu'inactif à la saisie ?

Merci beacoup pour votre aide (et à tout de suite pour un autre fil
croustillant lui aussi).


Avatar
ze Titi
Hello JPG !

AMHA, il faut modifier ton "filtre sur le champ ACTIF". Ta requête sera
juste un poil plus complexe. Comme il nous manque le nom de la seconde
table, je te fais un truc à la louche à adapter:

SELECT Colonne1, Colonne2
FROM taTable t1
WHERE ACTIF=true OR
DCount("*","taSecondeTable","leChampLiéATaPremièreTable='" & Colonne1 &
"'")>0

En sachant que si ton champ lié à la première table dans la seconde
table est un numérique, il faut supprimer les apostrophes autour du
critère dans le DCount.

Dis-nous !

En ce jour mémorable du mardi 13/02/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,
J'ai une liste déroulante qui affiche le nom d'une personne et stocke son
code dans une table.

Par exemple
Colonne 1 Colonne 2
DUP DUPONT
MAR MARTIN

Dans la table des collaborateurs, j'ai un champ [ACTIF] Oui/non pour décider
de rendre actif ou inactif ce collaborateur lors d'une prochaine saisie.
Dans la source de ma liste déroulante, j'ai donc filtré sur le champ ACTIF à
Oui.

Dans mon exemple je rends DUP inactif, mais je l'ai déja utilisé dans une
table et son code apparaît bien. Le problème c'est que son nom disparaît de
mon formulaire. Si le re-rends actif je le vois réapparaître.

Comment faire pour qu'il ne soit qu'inactif à la saisie ?

Merci beacoup pour votre aide (et à tout de suite pour un autre fil
croustillant lui aussi).


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
JPG
Dis-nous ?

Super, ça marche !

Juste une petite question de gourmandise : que faut-il que je fasse pour
qu'on utilise plus ce collaborateur dès que ACTIF devient False, un événement
après màj ou un valide si ?

Merci encore beaucoup.



Hello JPG !

AMHA, il faut modifier ton "filtre sur le champ ACTIF". Ta requête sera
juste un poil plus complexe. Comme il nous manque le nom de la seconde
table, je te fais un truc à la louche à adapter:

SELECT Colonne1, Colonne2
FROM taTable t1
WHERE ACTIF=true OR
DCount("*","taSecondeTable","leChampLiéATaPremièreTable='" & Colonne1 &
"'")>0

En sachant que si ton champ lié à la première table dans la seconde
table est un numérique, il faut supprimer les apostrophes autour du
critère dans le DCount.

Dis-nous !

En ce jour mémorable du mardi 13/02/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,
J'ai une liste déroulante qui affiche le nom d'une personne et stocke son
code dans une table.

Par exemple
Colonne 1 Colonne 2
DUP DUPONT
MAR MARTIN

Dans la table des collaborateurs, j'ai un champ [ACTIF] Oui/non pour décider
de rendre actif ou inactif ce collaborateur lors d'une prochaine saisie.
Dans la source de ma liste déroulante, j'ai donc filtré sur le champ ACTIF à
Oui.

Dans mon exemple je rends DUP inactif, mais je l'ai déja utilisé dans une
table et son code apparaît bien. Le problème c'est que son nom disparaît de
mon formulaire. Si le re-rends actif je le vois réapparaître.

Comment faire pour qu'il ne soit qu'inactif à la saisie ?

Merci beacoup pour votre aide (et à tout de suite pour un autre fil
croustillant lui aussi).


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
ze Titi
Il me semble qu'un

Me.Recalc

dans l'évènement "Après MAJ" de ce contrôle devrait suffire... A tester
quand même...

Dans ton message
Dis-nous ?

Super, ça marche !

Juste une petite question de gourmandise : que faut-il que je fasse pour
qu'on utilise plus ce collaborateur dès que ACTIF devient False, un événement
après màj ou un valide si ?

Merci encore beaucoup.



Hello JPG !

AMHA, il faut modifier ton "filtre sur le champ ACTIF". Ta requête sera
juste un poil plus complexe. Comme il nous manque le nom de la seconde
table, je te fais un truc à la louche à adapter:

SELECT Colonne1, Colonne2
FROM taTable t1
WHERE ACTIF=true OR
DCount("*","taSecondeTable","leChampLiéATaPremièreTable='" & Colonne1 &
"'")>0

En sachant que si ton champ lié à la première table dans la seconde
table est un numérique, il faut supprimer les apostrophes autour du
critère dans le DCount.

Dis-nous !

En ce jour mémorable du mardi 13/02/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,
J'ai une liste déroulante qui affiche le nom d'une personne et stocke son
code dans une table.

Par exemple
Colonne 1 Colonne 2
DUP DUPONT
MAR MARTIN

Dans la table des collaborateurs, j'ai un champ [ACTIF] Oui/non pour
décider de rendre actif ou inactif ce collaborateur lors d'une prochaine
saisie. Dans la source de ma liste déroulante, j'ai donc filtré sur le
champ ACTIF à Oui.

Dans mon exemple je rends DUP inactif, mais je l'ai déja utilisé dans une
table et son code apparaît bien. Le problème c'est que son nom disparaît de
mon formulaire. Si le re-rends actif je le vois réapparaître.

Comment faire pour qu'il ne soit qu'inactif à la saisie ?

Merci beacoup pour votre aide (et à tout de suite pour un autre fil
croustillant lui aussi).


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info






--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info