[access] pb masquage de champ ds un état

Résolu
binouzzz19 Messages postés 23 Statut Membre -  
 Gwen -
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
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. zenon Messages postés 729 Statut Membre 180
     
    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
  2. hichamzone
     
    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
  3. binouzzz19 Messages postés 23 Statut Membre
     
    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
    1. hichamzone
       
      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
    2. blux Messages postés 2045 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      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
    3. Gwen
       
      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
    4. blux Messages postés 2045 Date d'inscription   Statut Modérateur Dernière intervention   3 455 > Gwen
       
      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
    5. Gwen > blux Messages postés 2045 Date d'inscription   Statut Modérateur Dernière intervention  
       
      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