Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2021 Afficher zone de texte avec Checkbox

  • Initiateur de la discussion Initiateur de la discussion Orson83
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Orson83

XLDnaute Impliqué
Bonjour à tous,
N'ayant pas trouvé la solution par moi-même, j'aimerais savoir comment afficher du texte en cochant une case.
En effet, l'idée est que le texte soit en dur dans des cellules et que par défaut, la coche décochée cache le texte et inversement, la case cochée affiche le texte.
Je joins un fichier exemple dans ce thread. Merci d'avance pour votre aide.
 

Pièces jointes

Dernière édition:
Solution
Bonjour Orson, TooFatBoy,
En PJ une solution parmi d'autres :
VB:
Sub CheckBox1_Click()
    CouleurTexte [C13:F18], CheckBox1.Value
End Sub
Sub CheckBox2_Click()
    CouleurTexte [C21:F21], CheckBox2.Value
End Sub
Sub CheckBox3_Click()
    CouleurTexte [C23:F23], CheckBox3.Value
End Sub
Sub CouleurTexte(Plage, Etat)
Application.ScreenUpdating = False
If Etat = True Then
    For Each cell In Plage
        cell.Font.Color = vbBlack
    Next cell
Else
    For Each cell In Plage
        cell.Font.Color = cell.Interior.Color
    Next cell
End If
End Sub
Bonjour,

Proposition pour la zone 1 :
VB:
Private Sub CheckBox1_Click()
'
    With Range("C13:F18")
        If Me.CheckBox1.Value Then
            .NumberFormat = "General"
        Else
            .NumberFormat = ";;;"
        End If
    End With

End Sub
 
Bonjour Orson, TooFatBoy,
En PJ une solution parmi d'autres :
VB:
Sub CheckBox1_Click()
    CouleurTexte [C13:F18], CheckBox1.Value
End Sub
Sub CheckBox2_Click()
    CouleurTexte [C21:F21], CheckBox2.Value
End Sub
Sub CheckBox3_Click()
    CouleurTexte [C23:F23], CheckBox3.Value
End Sub
Sub CouleurTexte(Plage, Etat)
Application.ScreenUpdating = False
If Etat = True Then
    For Each cell In Plage
        cell.Font.Color = vbBlack
    Next cell
Else
    For Each cell In Plage
        cell.Font.Color = cell.Interior.Color
    Next cell
End If
End Sub
 

Pièces jointes

Dernière édition:
Bonjour à tous
Une autre...😉😉
VB:
Private Sub CheckBox1_Click()
[C13:G18].NumberFormat = IIf(CheckBox1, "# ##0.00", ";;;")
End Sub
Private Sub CheckBox2_Click()
[c21:g21].NumberFormat = IIf(CheckBox2, "# ##0.00", ";;;")
End Sub
Private Sub CheckBox3_Click()
[c23:g23].NumberFormat = IIf(CheckBox3, "# ##0.00", ";;;")
End Sub
 
Bonjour sylvanu, le forum,
Merci pour cette proposition qui fonctionne parfaitement.
Bon weekend 😉
 
Bonjour Jacky67, le forum,
Merci pour cette proposition qui fonctionne très bien. J'ai juste ajouté le € pour obtenir # ##0.00 € dans la mise en forme.
Très bon weekend 😉
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…