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

Colorer intitulé checkbox

  • Initiateur de la discussion Initiateur de la discussion babas
  • 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 !

babas

XLDnaute Junior
Bonjour à tous,

A nouveau un petit problème.

J'ai un fichier excel avec un userform avec dessus une centaine de checkbox.
J'aimerais que lorsque j'ouvre cet userform si une checkbox est cochée que le texte de cette dernière soit d'une autre couleur. J'ai bien pensé à sa :
Code:
If checkbox1.value = true then ...

mais pour 96 checkbox ça va être long. Je pense à une boucle mais je ne parviens pas à la faire.

Des idées ??

Merci d'avance
 
Re : Colorer intitulé checkbox

Bonjour babas,

avec ce code: les checkbox cochés apparaitront en vert à l'ouverture de l'USF
Code:
Private Sub UserForm_Initialize()
For i = 1 To 96
    If Me.Controls("checkbox" & i).Value = True Then Me.Controls("checkbox" & i).BackColor = RGB(0, 255, 0)
Next i
End Sub


à+
Philippe
 
Re : Colorer intitulé checkbox

Re,

ou ceci pour la couleur du texte
Code:
Private Sub UserForm_Initialize()
For i = 1 To 96
    If Me.Controls("checkbox" & i).Value = True Then Me.Controls("checkbox" & i).ForeColor = RGB(0, 255, 0)
Next i
End Su


à+
Philippe
 
Re : Colorer intitulé checkbox

Bonsoir à tous, bonsoir babas, phlaurent55


Une autre possibilité avec un module de classe

Donc un module de classe (ALT+F11 Insertion/Module de classe)
Le nommer: ClsCheckBox
Code:
Option Explicit
Public WithEvents oCBX As MSForms.CheckBox
Private Sub oCBX_Click()
oCBX.ForeColor = IIf(oCBX, vbBlue, vbBlack)
End Sub

Dans le code l'userform
Code:
Dim CBOX() As New ClsCheckBox
Private Sub UserForm_Initialize()
Dim oCL As Control
Dim x As Byte
    For Each oCL In Me.Controls
        If TypeName(oCL) = "CheckBox" Then
        x = x + 1
        ReDim Preserve CBOX(1 To x)
        Set CBOX(x).oCBX = oCL
        End If
    Next oCL
Set oCL = Nothing
End Sub
 
- 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

Réponses
6
Affichages
561
Réponses
13
Affichages
693
Réponses
90
Affichages
6 K
Réponses
18
Affichages
990
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…