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

Macros et VBA Excel Discussion :

Bouton visible sous conditions [XL-2016]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 58
    Points : 17
    Points
    17
    Par défaut Bouton visible sous conditions
    Bonjour,
    Dans le Workbook_Open j'aimerais :

    - Dire, si bouton 7 n'est pas visible alors :
    - Bouton 1, 2, 3 sont visible.



    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
    Private Sub Workbook_Open()
    ActiveSheet.Shapes("Bouton 2").Visible = False
    ActiveSheet.Shapes("Bouton 5").Visible = False
    ActiveSheet.Shapes("Bouton 3").Visible = False
    ActiveSheet.Shapes("Bouton 6").Visible = False
     
    'If Bouton 7 n'est pas visble
     
    Else ' alors rendre visible le bouton 2, 3, 5, 6 visible
    ActiveSheet.Shapes("Bouton 2").Visible = True
    ActiveSheet.Shapes("Bouton 5").Visible = True
    ActiveSheet.Shapes("Bouton 3").Visible = True
    ActiveSheet.Shapes("Bouton 6").Visible = True
     
    End If
     
    End Sub
    Auriez vous une idée à mettre pour le "if" ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Essaye

    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
     
    if ActiveSheet.Shapes("Bouton 7").Visible = False then
     
     ActiveSheet.Shapes("Bouton 1").Visible = True
     ActiveSheet.Shapes("Bouton 2").Visible = True
     ActiveSheet.Shapes("Bouton 3").Visible = True
     
    Else ' alors rendre visible le bouton 2, 3, 5, 6 visible
     
    ActiveSheet.Shapes("Bouton 2").Visible = True
    ActiveSheet.Shapes("Bouton 5").Visible = True
    ActiveSheet.Shapes("Bouton 3").Visible = True
    ActiveSheet.Shapes("Bouton 6").Visible = True
     
    end if
     
    end sub

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 58
    Points : 17
    Points
    17
    Par défaut Super
    Ça marche ! Grand merci à toi

  4. #4
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Tester si une variable Booléen est vrai ou fausse me parait toujours étrange.

    Ecrire Si VRAI = VRAI Alors revient a demander si VRAI = VRAI pour ensuite remplacer le test par ça valeur booléenne.
    Donc Si VRAI Alors

    De plus, si le bouton 7 est visible les autres ne le sont pas donc leurs propriétés .Visible respectives doivent être la négation de celle du bouton 7.

    Tu peux donc tout simplement écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Workbook_Open()
        Dim b As Boolean
            With ActiveSheet
                b = Not .Shapes("Bouton 7").Visible
                .Shapes("Bouton 2").Visible = b
                .Shapes("Bouton 5").Visible = b
                .Shapes("Bouton 3").Visible = b
                .Shapes("Bouton 6").Visible = b
            End With
    End Sub
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

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

Discussions similaires

  1. Lignes de registres visibles sous conditions
    Par clickandgo dans le forum IHM
    Réponses: 6
    Dernier message: 11/01/2011, 12h58
  2. Réponses: 10
    Dernier message: 08/12/2010, 06h48
  3. Contrôle visible sous-condition à chaque enregistrement
    Par Octave Le lorrain dans le forum IHM
    Réponses: 2
    Dernier message: 22/03/2009, 21h24
  4. Image visible sous condition: marche pas !
    Par docjo dans le forum IHM
    Réponses: 7
    Dernier message: 24/04/2008, 00h19
  5. sous etat visible sous condition
    Par lolothom dans le forum IHM
    Réponses: 1
    Dernier message: 04/07/2007, 04h23

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