OVH Cloud OVH Cloud

fonction if

4 réponses
Avatar
Stéphanie
Bonjour =E0 tous,

petite question : j'ai 3 champs A, B et C

selon le choix effectu=E9 en A (liste d=E9roulante =E0 2 choix),=20
je voudrais restreindre l'acc=E8s =E0 soit champ B soit Champ C

par exemple : choix n=B0 1 dans A autorise l'acc=E8s au champ=20
B mais grise le champ C
choix n=B02 autorise l'acc=E8s au champ C mais grise le cham B


j'ai donc pour l'instant fait la chose suivante :

- dans l'=E9v=E8nement sur ouverture de mon form, j'ai mis :=20
ChampB.Enabled=3Dfalse et pareil pour le champ C

donc =E0 l'ouverture, les 2 champs sont bien gris=E9s.

par contre, je n'arrive pas =E0 indiquer la condition pour=20
d=E9griser l'1 ou l'autre champ.

je pense qu'il faudrait indiquer le code suivant (ou un=20
truc dans le genre) :

If Me.ChampA=3D"choix1" Then ChampB.Enabled=3Dtrue

et pareil pour C, mais je ne sais pas o=F9 le placer.

quelqu'un a une suggestion ?
merci bcp

4 réponses

Avatar
Raymond [mvp]
Bonjour.

tu le places dans l'événement afterupdate (après maj) de ton contrôle ChampA

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


"Stéphanie" a écrit dans le message de
news:1355101c443cb$7e0fc000$
Bonjour à tous,

petite question : j'ai 3 champs A, B et C

selon le choix effectué en A (liste déroulante à 2 choix),
je voudrais restreindre l'accès à soit champ B soit Champ C

par exemple : choix n° 1 dans A autorise l'accès au champ
B mais grise le champ C
choix n°2 autorise l'accès au champ C mais grise le cham B


j'ai donc pour l'instant fait la chose suivante :

- dans l'évènement sur ouverture de mon form, j'ai mis :
ChampB.Enabledúlse et pareil pour le champ C

donc à l'ouverture, les 2 champs sont bien grisés.

par contre, je n'arrive pas à indiquer la condition pour
dégriser l'1 ou l'autre champ.

je pense qu'il faudrait indiquer le code suivant (ou un
truc dans le genre) :

If Me.ChampA="choix1" Then ChampB.Enabled=true

et pareil pour C, mais je ne sais pas où le placer.

quelqu'un a une suggestion ?
merci bcp
Avatar
Buddy
Salut
Sur click ou sur Après MAJ de ta zone de liste A

Ouala
Bye
Buddy


"Stéphanie" a écrit dans le message de
news:1355101c443cb$7e0fc000$
Bonjour à tous,

petite question : j'ai 3 champs A, B et C

selon le choix effectué en A (liste déroulante à 2 choix),
je voudrais restreindre l'accès à soit champ B soit Champ C

par exemple : choix n° 1 dans A autorise l'accès au champ
B mais grise le champ C
choix n°2 autorise l'accès au champ C mais grise le cham B


j'ai donc pour l'instant fait la chose suivante :

- dans l'évènement sur ouverture de mon form, j'ai mis :
ChampB.Enabledúlse et pareil pour le champ C

donc à l'ouverture, les 2 champs sont bien grisés.

par contre, je n'arrive pas à indiquer la condition pour
dégriser l'1 ou l'autre champ.

je pense qu'il faudrait indiquer le code suivant (ou un
truc dans le genre) :

If Me.ChampA="choix1" Then ChampB.Enabled=true

et pareil pour C, mais je ne sais pas où le placer.

quelqu'un a une suggestion ?
merci bcp
Avatar
stéphanie
merci à tous les 2, ça marche effectivement, je viens
d'essayer, mais le problème, c'est que du coup la cham b
ets dé-grisé dans tous mes enregistrements (je suis en
mode tabulaire).

y a t-il un moyen de limiter le "dé-grisage" au champ en
cours ?
-----Message d'origine-----
Bonjour.

tu le places dans l'événement afterupdate (après maj) de
ton contrôle ChampA


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


"Stéphanie" a écrit
dans le message de

news:1355101c443cb$7e0fc000$
Bonjour à tous,

petite question : j'ai 3 champs A, B et C

selon le choix effectué en A (liste déroulante à 2 choix),
je voudrais restreindre l'accès à soit champ B soit Champ
C


par exemple : choix n° 1 dans A autorise l'accès au champ
B mais grise le champ C
choix n°2 autorise l'accès au champ C mais grise le cham B


j'ai donc pour l'instant fait la chose suivante :

- dans l'évènement sur ouverture de mon form, j'ai mis :
ChampB.Enabledúlse et pareil pour le champ C

donc à l'ouverture, les 2 champs sont bien grisés.

par contre, je n'arrive pas à indiquer la condition pour
dégriser l'1 ou l'autre champ.

je pense qu'il faudrait indiquer le code suivant (ou un
truc dans le genre) :

If Me.ChampA="choix1" Then ChampB.Enabled=true

et pareil pour C, mais je ne sais pas où le placer.

quelqu'un a une suggestion ?
merci bcp


.



Avatar
Raymond [mvp]
Pas dans un formulaire en continu, c'est le même contrôle. Sinon à placer
les champs à griser dans l'entête ou le pied de formulaire et non dans le
détail.

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


"stéphanie" a écrit dans le message de
news:1335101c443cf$cbfc3010$
merci à tous les 2, ça marche effectivement, je viens
d'essayer, mais le problème, c'est que du coup la cham b
ets dé-grisé dans tous mes enregistrements (je suis en
mode tabulaire).

y a t-il un moyen de limiter le "dé-grisage" au champ en
cours ?