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

IHM Discussion :

[VBA - ACCESS] Rendre (in)Visible une zone


Sujet :

IHM

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [VBA - ACCESS] Rendre (in)Visible une zone
    Bonjour,

    Je me creuse la tête depuis un moment pour rendre visible une zone de texte dans un formulaire.
    Cette zone de texte doit être visible par rapport à une valeur spécifique contenue dans une zone de liste ( préalablement filtrée) ne contenant qu'une réponse.

    Pour la compréhension, la Zone de liste " VISIBLE "donne comme réponse " Oui" ou " Non ".
    Si dans VISIBLE, on obtient Non alors la zone de texte " TEXTE " devient invisible( et par conséquent on ne peut plus y inscrire du texte ).

    j'ai fais ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Private Sub VISIBLE_AfterUpdate()
     
    If Me.VISIBLE= "Oui" Then  
        Me.TEXTE.Visible = True  
    Else  
        Me.TEXTE.Visible = False  
    End If 
     
    End Sub
    Que la réponse soit " Oui" ou "Non" il me rend "TEXTE" visible.

    J'ai mis le code dans l'évènement après MAJ de VISIBLE .

    Merci pour votre aide

  2. #2
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Bonjour et bienvenu sur le forum.

    Comment est alimenté ta liste déroulante ? J'ai un doute sur ton test "OUI" ...
    ............................................................................................

    Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    A mon avis il faut que tu fasses ton test sur le click de ta zone de liste.

    Starec

  4. #4
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    VISIBLE est une zone de liste qui est alimentée par une liste déroulante ( que l'on nommera LISTE ).
    Quand je clique dans LISTE, j'obtiens un Oui ou un Non dans VISIBLE .
    Et VISIBLE doit par ce qu'il contient rendre visible (oui) ou invisible (non) la zone TEXTE.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je ne comprends pas trop ton cheminement, car lorsque tu cliques sur LISTE, pourquoi ne fais tu pas l'action tout de suite sur TEXTE au lieu de passer par VISIBLE qui ne t'affiche que Oui ou Non.

    Starec

  6. #6
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    J'y ai pensé au début vu que de toute façon le choix pris dans LISTE est dans TABLE et que le résultat de VISIBLE provient aussi de TABLE.
    J'ai essayé mais je suis coincé.
    Alors j'ai tenté par un autre moyen qui est celui-ci.

    Pour l'instant, j'ai dans TABLE 6 enregistrements qui ont dans le champ
    DANGEREUX:
    -Oui
    ou
    -Non

    le formulaire mepermet de remplir une autre table (ENREGISTREMENT).

  7. #7
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par nelior Voir le message
    J'y ai pensé au début vu que de toute façon le choix pris dans LISTE est dans TABLE et que le résultat de VISIBLE provient aussi de TABLE.
    J'ai essayé mais je suis coincé.
    Alors j'ai tenté par un autre moyen qui est celui-ci.

    Pour l'instant, j'ai dans TABLE 6 enregistrements qui ont dans le champ
    DANGEREUX:
    -Oui
    ou
    -Non

    le formulaire mepermet de remplir une autre table (ENREGISTREMENT).
    Heu ... je dois être fatigué... j'ai décroché là

    Je réitère ma question autrement: es-tu sur que ta liste visible contient des textes "OUI" et "NON" ? Ce ne serait pas plutot des valeurs booléenes?

    Pour y voir plus clair: donne-nous le code SQL - ou équivalent - de la source de ta liste "VISIBLE".

    Met un point d'arrêt dans ton code et regarde ce que vaut Me.visible puis par où il passe dans le script.
    ............................................................................................

    Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.

  8. #8
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Au début dans la table c'était des cases à cocher, ensuite je me suis dit de mettre oui ou non.
    Donc pour répondre, c'est du simple texte oui ou non.

    Voici le vrai contenu du la zone Visible:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT tbl_at_dechet.[Déchet dangereux] 
    FROM tbl_at_dechet 
    GROUP BY tbl_at_dechet.[Déchet dangereux], tbl_at_dechet.dechet 
    HAVING (((tbl_at_dechet.dechet)=Formulaires!frm_at_enr!cbo_dechet));

    où:

    tbl_at_dechet = ENREGISTREMENT
    Déchet dangereux = DANGEREUX

    voilà voilà

  9. #9
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par nelior Voir le message
    Au début dans la table c'était des cases à cocher, ensuite je me suis dit de mettre oui ou non.
    Donc pour répondre, c'est du simple texte oui ou non.

    Voici le vrai contenu du la zone Visible:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT tbl_at_dechet.[Déchet dangereux] 
    FROM tbl_at_dechet 
    GROUP BY tbl_at_dechet.[Déchet dangereux], tbl_at_dechet.dechet 
    HAVING (((tbl_at_dechet.dechet)=Formulaires!frm_at_enr!cbo_dechet));

    où:

    tbl_at_dechet = ENREGISTREMENT
    Déchet dangereux = DANGEREUX

    voilà voilà
    En passant, tu peux optimiser et simplifier ta requête comme suit:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT DISTINCT tbl_at_dechet.[Déchet dangereux] 
    FROM tbl_at_dechet 
    WHERE (((tbl_at_dechet.dechet)=Formulaires!frm_at_enr!cbo_dechet));
    ............................................................................................

    Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.

  10. #10
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par nelior Voir le message
    VISIBLE est une zone de liste qui est alimentée par une liste déroulante ( que l'on nommera LISTE ).
    Quand je clique dans LISTE, j'obtiens un Oui ou un Non dans VISIBLE .
    Et VISIBLE doit par ce qu'il contient rendre visible (oui) ou invisible (non) la zone TEXTE.
    Citation Envoyé par Starec Voir le message
    Bonjour

    Je ne comprends pas trop ton cheminement, car lorsque tu cliques sur LISTE, pourquoi ne fais tu pas l'action tout de suite sur TEXTE au lieu de passer par VISIBLE qui ne t'affiche que Oui ou Non.

    Starec
    Bon, comme le remarque l'ami Starec, tu n'as sans doute pas
    utilisé le bon évènement mais de manière plus générale, il me semble que tu as largement compliqué les choses... je serai toi, je reprendrai du début...


    Citation Envoyé par nelior Voir le message
    Au début dans la table c'était des cases à cocher, ensuite je me suis dit de mettre oui ou non.
    Donc pour répondre, c'est du simple texte oui ou non.
    ...
    Je vois pas l'intérêt un booléen peut très bien être affiché avec des oui non...
    ............................................................................................

    Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.

Discussions similaires

  1. [VBA-W]Inserer et modifier une Zone de texte
    Par marsupoilu dans le forum VBA Word
    Réponses: 5
    Dernier message: 17/04/2019, 09h22
  2. [VBA-Access] un champs d'une requete en un string
    Par vdbadr dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 01/07/2006, 19h27
  3. Access : dimensionner champs d'une 'zone de liste'
    Par youtch dans le forum VBA Access
    Réponses: 3
    Dernier message: 23/05/2006, 15h18
  4. [VBA-E]Comment vérifier qu'une zone de texte existe?
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/04/2006, 14h19
  5. [VBA][Access]: Listbox se référant à une autre BD
    Par Alexj51 dans le forum Access
    Réponses: 4
    Dernier message: 07/02/2006, 15h36

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