IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Masquer un champ dans un état si il est vide


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Points : 18
    Points
    18
    Par défaut Masquer un champ dans un état si il est vide
    Bonjour le forum,

    Je réalise un etat étiquette sur une table qui contient :

    non;prenom;adr1;adr2;CP;Ville....

    Je souhaite que si adr2 est vide , l'espace laissé par le champ vide n'apparaisse plus dans l'état, et donc que CP Ville "remonte d'un cran"

    Existe t'il une propriété qui gère cela, fuat il passer par du VBA, quelqu'un a t'il une solution

    Merci

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Ca peut ressembler à ça, sachant que la hauteur des objets doit être récupérée et que la hauteur de la section Détail reste la même donc pas de hauteur gagnée mais peut-être une meilleure esthétique

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
     
     If (Me!adr2 = "") Or IsNull(Me!adr2) Then
      Me!etAdr2.Visible = False
      Me!adr2.Visible = False
      decalage = 341
     Else
      Me!etAdr2.Visible = True
      Me!adr2.Visible = True
      decalage = 0
     End If
     
     Me!etAdr2.Top = 793 - decalage
     Me!adr2.Top = 793 - decalage
     Me!etCP.Top = 1133 - decalage
     Me!cp.Top = 1133 - decalage
     Me!etVille.Top = 1474 - decalage
     Me!ville.Top = 1474 - decalage
    End Sub
    Pour récupérer la hauteur, il suffit de mettre un stop et d'afficher dans la fenêtre d'execution ?Me!adr2.Top, ...

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 366
    Points : 23 834
    Points
    23 834
    Par défaut
    As-tu regardé ce que cela donne en mettant la propriété "auto-réductible" à vrai pour chacun de tes champs d'impression ?

    Pour moi cela devrait faire ce dont tu as besoin sans avoir à écrire une seule ligne de code.

    A+

  4. #4
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Points : 18
    Points
    18
    Par défaut
    Merci a vous 2,

    cela fonctionne parfaitement avec auto reductible !!!!

    philippe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] masquer un champ dans un état selon le contenu d'un autre
    Par stagiaire88 dans le forum IHM
    Réponses: 12
    Dernier message: 06/07/2011, 09h15
  2. Retrouver un champ dans un état
    Par Aurèl90 dans le forum Access
    Réponses: 2
    Dernier message: 25/01/2006, 10h44
  3. Masquer des champs dans un formulaire
    Par crazykingpin dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/12/2005, 15h29
  4. Arrondir la valeur d'un champ dans un état?
    Par drthodt dans le forum Access
    Réponses: 2
    Dernier message: 14/09/2005, 16h46
  5. Rendre invisible un champs dans un état
    Par AnestheziE dans le forum Access
    Réponses: 3
    Dernier message: 12/09/2005, 20h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo