Une même formule pour plusieurs Textbox
Gustav
-
Gustav -
Gustav -
Bonjour et bonne année à tous et merci pour votre aide.
Voilà ma question :
J'ai une formule pour colorer les polices :
Private Sub TextBox1_Change()
If TextBox1.Value = 0 Then
Me.Textbox1.ForeColor = vbWhite
Else
End If
End Sub
Je voudrais que cette formule s'applique à 10 TextBox.
Je ne me vois pas la recopier 10 fois.
Il y a t-il un moyen pour regrouper les 10 TextBox dans une même formule couleur.
Un grand merci à vous
Bonne journée
Gustav
Voilà ma question :
J'ai une formule pour colorer les polices :
Private Sub TextBox1_Change()
If TextBox1.Value = 0 Then
Me.Textbox1.ForeColor = vbWhite
Else
End If
End Sub
Je voudrais que cette formule s'applique à 10 TextBox.
Je ne me vois pas la recopier 10 fois.
Il y a t-il un moyen pour regrouper les 10 TextBox dans une même formule couleur.
Un grand merci à vous
Bonne journée
Gustav
4 réponses
-
Bonjour,
Est-ce que tes textboxes sont sur un userform ? Est-ce que tu as d'autres textboxes pour lesquels tu ne souhaites pas que la couleur change ? Dans ce cas, il me faut le noms des textboxes concernés.
Cordialement.
Daniel -
Merci pour ta réponse rapide.
Oui, tous les textBox sont sur le même UserForm6.
Ils sont tout simplement numérotés de 1 à 10 : TextBox1, TextBox2, etc... et sont tous concernés par la même formule, à savoir :
Private Sub TextBox1_Change()
If TextBox1.Value = 0 Then
Me.Textbox1.ForeColor = vbWhite
Else
End If
End Sub
Je te remercie pour ta précieuse aide
Gustav-
A l'initialisation du userform, mets ce code :
Dim GrTB() As New MesTextboxes Private Sub UserForm_Activate() Dim C As Control, i As Integer For Each C In Me.Controls If Left(C.Name, 7) = "TextBox" Then ReDim Preserve GrTB(i) Set GrTB(i).tbx = C i = i + 1 End If Next End Sub
Ajoute un module de classe et renomme-le "MesTextboxes". Dans ce module, mets :
Public WithEvents tbx As MSForms.TextBox Private Sub tbx_change() If tbx.Value = "0" Then tbx.ForeColor = vbWhite End Sub
Si tu rencontres des difficultés, dis-le.
Daniel
-
-
-
Je viens d'essayer tes deux formules comme tu l'as bien décrit.
Mais désolé ça ne marche pas!
Le but est, comme expliqué plus haut, si dans un textbox j'ai la valeur 0, cette dernière ne s'affiche pas (elle est en fait de couleur blanche).
Au dessus de cette valeur 0, elle devient noire.
Ceci appliqué à 10 TextBox
Merci encore de te filer du travail un dimanche!
Gustav