[access] pb masquage de champ ds un état

Résolu/Fermé
binouzzz19 Messages postés 23 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 3 septembre 2009 - 23 avril 2007 à 09:26
 Gwen - 19 mars 2009 à 11:59
Bonjour a tous !!

Voila, donc mon problème se situe au niveau de l'état !!

En effet, quand j'ouvre la fiche personnel d'une personne, j'ai toutes les informations qui s'affichent. Tout va bien, même trop bien, puisque quand le sexe de la personne est H, le champ "nomJeuneFille" apparait quand même !! Le truc c'est que je voudrais masquer ce champ dans l'ETAT . J'ai regardé dans l'aide d'access, et dans le forum mais personne ne semble avoir le même pb que moi !! est-ce normal ?

Merci d'avance

3 réponses

zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 180
23 avril 2007 à 22:15
Bonsoir,

je n'ai pas le temps de vérifier la syntaxe exacte...

Dans le champ à masquer essaie: =VraiFaux([Sexe]="H";"Nom de jeune fille"; " ")

Je ne sais plus dans quel ordre il faut mettre les arguments, mais l'idée y est...
1
bonjour Binouzzz

Je rencontre le même problème que toi, càd que je voudrais masquer un champs dans mon état au cas ou il est vide et j'aimerai savoir si tu as trouvé une solution ?

Merci
0
binouzzz19 Messages postés 23 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 3 septembre 2009
11 mai 2007 à 16:29
oui, j'ai réussi !!

Il faut que tu mette le code suivant
Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
    'Si la personne n'a pas d'enfants, on rend invisible les étiquettes de nom,
    'prénom, et date de naissance de l'enfant, et on rend visible l'étiquette affichant
    ' prénom_personne nom_personne "n'a pas d'enfants"
    If IsNull([Enfant.nom]) Then
        Me.nom_Étiquette.Visible = False
        Me.prenom_Étiquette.Visible = False
        Me.dateNais_Étiquette.Visible = False
        Me.PasEnfants.Visible = True
    End If
End Sub


Dans ce cas la, je le fait au niveau du détail c'est pour cela qu'il y a détail_format, sinon fait en fonction !!

Voila
0
Merci
j'avais essayé avec

if champ.value="" then
etiquette.visible=false

mais ça ne marchait pas !!

Avec ton code ça marche impécable, c'est tout à fait ce que je voulais, ma base est enfin finalisée

merci bien
0
blux Messages postés 25999 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 23 avril 2024 3 289
11 mai 2007 à 17:22
Salut,

il y a une différence entre 'est vide' et 'est nul'.

Dans le premier cas, la valeur est connue, et elle est vide, dans le deuxième cas, la valeur est inconnue, et on doit la tester avec IsNull.
0
Bonjour,

J'ai aussi un problème pour masquer ou rendre visible un champ mais cette fois-ci dans un formulaire: pour etre plus précis, j'ai deux champ qu'il faut remplir à l'aide de listes. Je souhaiterai que le "champ 2" n'apparaisse que si l'on choisi le "choix_a" pour le "champ 1".
La syntaxe est-elle la même que pour un état?
La procédure est à entrer en mode création, en faisant clic droit sur le "Champ 2" puis "creer un évenement". C'est bien ça?

Merci d'avance!
0
blux Messages postés 25999 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 23 avril 2024 3 289 > Gwen
12 mars 2009 à 10:28
Non, il faut tester quand on a fait une modification dans champ1, pas dans champ2...

dans champ1, créer évènement 'sur modification (ou sur changement)', mettre un truc comme ça :

if champ1.value = "choix_a" then
champ2.visible = true
else
champ2.visible = false
end if.

Mais il faut avoir déjà caché champ2 à l'ouverture du formulaire (évènement 'sur ouverture' du formulaire).
0
Gwen > blux Messages postés 25999 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 23 avril 2024
12 mars 2009 à 14:54
Merci!

Ca avance petit à petit.
Maintenant, mon champ est caché!
Le problème c'est qu'il est caché tout le temps... même si pour le champ 1 on a le "choix_a".

Je vais essayer de bidouiller quelque chose. Si je trouve la solution, je vous tiens au courant.

Toute idée est la bienvenue!

A+
0