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 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,

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 TooFatBoy, le forum,
Merci pour cette proposition.
Il y a juste un problème de format au niveau des valeurs qui perdent les 2 décimales après la virgule ",00 €".
 
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 poste. Merci d'avance pour votre aide.
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 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 sylvanu, le forum,
Merci pour cette proposition qui fonctionne parfaitement.
Bon weekend 😉
 
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 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

Retour