Autres Coloration de plusieurs textbox

AlainProviste

XLDnaute Nouveau
Bonjour,


j'ai créeé un userform contenant 60 textbox (Textbox1 à textbox60). Je souhaiterais que lorsque un des textbox affiche zéro, sa couleur de fond soit égale à "noir".
Comment est-il possible de réaliser une formule sans avoir à la répéter soixante fois ?
Merci par avance pour la solution que vous voudrez bien me fournir.

PS : J'ai excel 2007.
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Alain, bonjour le forum,

Il te faut passer par une module de classe. En pièce jointe un petit exemple Excel à adapter et un fichier PDF explicatif que je ressors chaque fois que je dois faire un module de classe car j'oublie tout le temps le procédé (faut dire que je n'en fais pas souvent)...
 

Pièces jointes

  • Exemple2.xlsm
    24.5 KB · Affichages: 9
  • Module de Classe.pdf
    115.5 KB · Affichages: 7

AlainProviste

XLDnaute Nouveau
Bonjour Alain, bonjour le forum,

Il te faut passer par une module de classe. En pièce jointe un petit exemple Excel à adapter et un fichier PDF explicatif que je ressors chaque fois que je dois faire un module de classe car j'oublie tout le temps le procédé (faut dire que je n'en fais pas souvent)...
Bonjour Robert,

merci pour ta réponse et ton aide. Cependant, j'ai tenté d'adapter les modules de classe à mon cas mais j'ai un message d'erreur à : ReDim Preserve TCB(0 To i)
Je ne pense pas avoir tout compris car pour moi les modules de classe c'est une "première" et en VBA je balbutie.
Merci encore...
 

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour AlainProviste, bonjour Robert, bonjour Patrick

Code à ajouter :
VB:
Option Explicit

Private Sub UserForm_Activate()
 Dim contrl As Control
For Each contrl In Me.Controls
If TypeOf contrl Is msforms.TextBox Then
If contrl.Value = "0" Then
contrl.BackColor = vbBlack
Else: contrl.BackColor = vbWhite
End If
End If
Next
End Sub

Bon dimanche à toutes & à tous
@+ Eric c
 
Dernière édition:

AlainProviste

XLDnaute Nouveau
Bonjour à vous tous et un grand merci .

Le code d'Eric C fonctionne parfaitement.. Je pense que ceux de

paricktoulon et deRobert devaient également le faire mais je n'ai pas su l'adapter au mien. Il va falloir que je me mette à bosser les modules de classe.​

Bon dimanche à vous tous et encore merci por vos aides.​

AlainProviste​

 

AlainProviste

XLDnaute Nouveau
re
le mien il n'y avait pas de module classe
tu avais juste a coller le code dans le module du userform et mettre les deux ligne du activate et c'etait bouclé
pour 60 changer 8 pour 60
et voilà c’était fini
Je garde ton code "sous le coude" pour l'étudier et/ou l'utiliser le cas échéant. Je trouve ce forum formidable par la pertinence des solutions proposées.
Je ne vous remercierai jamais assez car lorsqu'on débute en VBA et que suite à la demande d'aide une ou plusieurs solutions "magiques" apparaissent cela fait vraiment plaisir...
A bientôt.
 

Statistiques des forums

Discussions
311 729
Messages
2 081 966
Membres
101 852
dernier inscrit
dthi16088