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