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 :

rendre visible ou invisible une texte box


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut rendre visible ou invisible une texte box
    Bonjour,

    Dans un formulaire j'ai 2 texte box (Texte92 et Texte94).

    Je souhaite que Texte92 soit invisible s'il est vide et que Texte94 soit invisible si le champs est égale à 0.

    Je crois qu'il y a un code à faire mais je n'arrive pas à trouver la fonction pour dire invisible

    Pouvez-vous m'aidre ?

    Merci

    Nicolas

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 40
    Points : 32
    Points
    32
    Par défaut
    Tu créer cette procédure :

    sub test()
    if Isnull(Texte92) then
    Texte92.visible=true
    else
    Texte92.visible=false
    end if
    end sub

    puis Tu associes cette procédure au chargement du formulaire :

    call test

    sans oublier de l'associer à Texte92 après MAJ :
    call test

    puis sur texte94, tu créais cette procédère après MAJ :

    if texte94=0 then
    texte94.visible = false
    else
    texte94.visible = true
    end if

    Bon courage

  3. #3
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    Bonjour,

    J'ai crée un code dans le chargement du formulaire dans lequel j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    sub test() 
    if Isnull(Texte92) then 
    Texte92.visible=false
    else 
    Texte92.visible=true
    end if 
    if texte94=0 then 
    texte94.visible = false 
    else 
    texte94.visible = true 
    end if 
    end sub
    puis j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    sub test() 
    if Isnull(Texte92) then 
    Texte92.visible=false
    else 
    Texte92.visible=true
    end if
    end sub
    dans après mise à jour de Texte92 et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if texte94=0 then 
    texte94.visible = false 
    else 
    texte94.visible = true 
    end if 
    end sub
    dans après mise à jour de Texte94.

    mais j'ai un message d'erreur : l'expression du code n'est pas correct

  4. #4
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Attention aux noms de tes procédures. Tu peux essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     Private Sub Texte92_AfterUpDate()
    Me.Texte.92.Visible = Not IsNull(Me.Texte92)
    End sub
     
    Private Sub Texte94_AfterUpDate()
    Me.Texte94.Visible = Not Me.Texte94 = 0
    End Sub
    D'ailleurs, pour saisir ton code, il faut passer par la fenêtre des propriétés des contrôles 92 et 94, onglet évènement, sur mise à jour.

    Le code marchera si le curseur est déjà parti du contrôle.

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  5. #5
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    Ca ne marche pas, j'ai toujours les texte box de visible.

    Nicolas

  6. #6
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Cela veut dire qu'il ne se passe rien, ou que tu as un msg d'erreur?

    Recopie le code d'un des deux contrôles et dis moi ce que tu lis :
    dans les propriétés du contrôle, onglet évènement, sur la ligne 'après mise à jour'.

    A+

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  7. #7
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    Je n'ai pas de message d'erreur mais il ne se passe rien, j'ai pour le Texte92 sur la ligne après MAJ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Procédure événementielle]
    dans lequel j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Texte92_AfterUpDate()
     
    Me.Texte92.Visible = Not IsNull(Me.Texte92)
    End Sub
    Pour le texte94 j'ai mis le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Texte94_AfterUpDate()
    Me.Texte94.Visible = Not Me.Texte94 = 0
    End Sub

  8. #8
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Tu ne m'as pas répondu à :
    et dis moi ce que tu lis :
    dans les propriétés du contrôle, onglet évènement, sur la ligne 'après mise à jour'.
    A+

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  9. #9
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    Pour le formulaire en lui même rien, uniquement pour les texte box ou j'ai [Procédure événementielle]

  10. #10
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    hello

    c'est pas d'un formulaire en mode continu dont on parle là?

    sinon si le formulaire est en mode simple, il faut mettre le code sur l'événement "sur activation" pour que ça se déclenche au changement d'enregistrement.

    ça doit marcher mais il faut trouver les bons événements en fonction de ton formulaire.

  11. #11
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Je viens de faire l'essai, tu devrais avoir une erreur, car comme je le craignais, le focus est encore là.

    Essaie ça sur 94:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Texte94_AfterUpDate()
    MsgBox "Exécution Sub Texte94_AfterUpDate()"' pour test
    SendKeys "{TAB}"
    DoEvents
    Me.Texte4.Visible = Not Me.Texte4 = 0
    End Sub
    C'est pas très joli, mais bon ça marche. Sinon, tu peux effectivement attendre la prochaine activation.
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  12. #12
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    il s'agit d'un formulaire en continu

  13. #13
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par pgz
    Je viens de faire l'essai, tu devrais avoir une erreur, car comme je le craignais, le focus est encore là.

    Essaie ça sur 94:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Texte94_AfterUpDate()
    MsgBox "Exécution Sub Texte94_AfterUpDate()"' pour test
    SendKeys "{TAB}"
    DoEvents
    Me.Texte4.Visible = Not Me.Texte4 = 0
    End Sub
    C'est pas très joli, mais bon ça marche. Sinon, tu peux effectivement attendre la prochaine activation.

    Ca ne me fait rien

  14. #14
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    La question était bonne!

    Si c'est un formulaire continu, laisse tomber le VBA. Si tu masque un contrôle, il disapaît dans tous les enr.

    Tu ne peux utiliser que la mise en forme conditionnelle du contrôle, et jouer sur la couleur de police.


    A+

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

Discussions similaires

  1. [WD10] rendre visible ou invisible une fenêtre avec son alias
    Par GodGives dans le forum WinDev
    Réponses: 4
    Dernier message: 22/02/2011, 23h28
  2. Réponses: 4
    Dernier message: 13/07/2010, 12h20
  3. Réponses: 15
    Dernier message: 21/04/2007, 23h49
  4. rendre invisible une texte box si elle est vide
    Par kuhnden dans le forum IHM
    Réponses: 4
    Dernier message: 09/03/2006, 01h55
  5. rendre visible ou invisible une picture (icon)
    Par Robleplongeur dans le forum MFC
    Réponses: 3
    Dernier message: 18/05/2004, 12h23

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