Partage
  • Partager sur Facebook
  • Partager sur Twitter

VBA pr excel case a cocher interaction

changement de couleur

    8 avril 2020 à 23:26:35

    Chers tous, 

    Je suis notice. Je travaille actuellement sous excel 2016.

    J'ai crée une checkbox et un cadre. Le "résultat" de ma checkbox est en cellule A1 (propriété LINKEDCELL).

    Je souhaite changer la couleur de fond du calque selon que ma case a cocher est ou n'est pas sélectionnée.

    Mon est code est le suivant

                  Private Sub CheckBox1_Click()

                 If A1 = vrai Then Frame1.BackColor = 6

                 If A1 = FAUX Then Frame1.BackColor = 7

                 End Sub

    La difficulté qui se pose : Je peux cocher une seule fois ma checkbox. Si je clique à nouveau dessus, la valeur de ma cellule A1 change bien, mais la couleur du cadre ne change pas. 

    Pour quelle raison ?

    Faut-il faut une boucle infinie ?

    Merci par avance,

    Aymeric

    • Partager sur Facebook
    • Partager sur Twitter
      9 avril 2020 à 12:45:47

      Salut,

      Est-ce que ce code s'exécute ? Car pour moi il ne devrait pas tourner, ou alors il y a des nouveautés d'Excel 2016.

      • Partager sur Facebook
      • Partager sur Twitter
        9 avril 2020 à 17:26:45

        Tel qu'il est écrit, A1 , vrai et FAUX sont tous vide, donc les 2 tests sont valides et donc le Frame1 ne prend que la couleur 7.

        Pour prendre en compte la valeur de la cellule A1, il faut écrire: 

        Private Sub CheckBox1_Click()
        
            If ActiveSheet.Range("A1").Value = "VRAI" Then Frame1.BackColor = vbGreen
        
            If ActiveSheet.range("A1").Value = "FAUX" Then Frame1.BackColor = bvRed
        
        End Sub

        Nota: les valeurs de 6 ou 7 pour backcolor sont trop peu différentes pour voir une différence, d'où ici l'utilisation des variables de couleurs (on peut utiliser la fonction RGB(r,g,b) pour une couleur RGB définie)

        • Partager sur Facebook
        • Partager sur Twitter

        VBA pr excel case a cocher interaction

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown