changer la couleur d'un control lorsqu'il reçoit le focus

crisud

XLDnaute Nouveau
Bonjour

Depuis ce matin j'essaye un code, de façon a changer la couleur du contrôle où se trouve le curseur
mais je bloque sur le code

Code:
Option Explicit
Dim Ctrl As Control
Private Sub UserForm_Initialize()

'date

TxtDateComptable.Value = Format(Now(), "ddmmyyyy")
TxtDateSaisie.Value = Format(Now(), "ddmmyyyy")

'ActiveControl.BackColor = 100
 
For Each Ctrl In UserForm1.Controls
   If Ctrl.Name <> ActiveControl.Name Then
        Ctrl.BackColor = 100
    Else
        ActiveControl.BackColor = 200
    End If
Next Ctrl


End Sub


un petit coup de main, pour avancer

merci d'avance
 

Pièces jointes

  • V5.zip
    16.2 KB · Affichages: 30
  • V5.zip
    16.2 KB · Affichages: 34
  • V5.zip
    16.2 KB · Affichages: 35

Staple1600

XLDnaute Barbatruc
Re : changer la couleur d'un control lorsqu'il reçoit le focus

Bonjour à tous


Tu n'es pas dans la bonne procédure: Private Sub UserForm_Initialize()
Celle-ci ne s'éxécute qu'a l'affichage de l'userform

Par contre ici c'est déjà mieux ;) mais pas encore tout à fait cela ;)
(test OK sur un Userform contenant un TextBox nommé TextBox2)
Code:
Private Sub TextBox2_Change()
TextBox2.BackColor = RGB(100, 100, 100)
End Sub

EDITION: Voila qui est un peu mieux
(conditions de test : deux textbox sur l'userform
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox2.BackColor = RGB(100, 100, 100)
End Sub
Quand tu quittes le TextBox1, en appuyant sur la touche Tab par exemple, la couleur du TextBox2 changera
PS: Les TabIndex sont à 0 pour TextBox1 et 1 pour TextBox2
(voir dans les propriétés des Textbox)
 
Dernière édition:

xhudi69

XLDnaute Accro
Re : changer la couleur d'un control lorsqu'il reçoit le focus

Bonjour crisud, le Forum,
Bonjour Staple1600 :)

Je dirais même plus, en jouant avec les évennements:
Code:
Private Sub TextBox2_Enter()
TextBox2.BackColor = RGB(255, 0, 0)
End Sub

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox2.BackColor = RGB(100, 100, 100)
End Sub

@+ :cool:
 

Staple1600

XLDnaute Barbatruc
Re : changer la couleur d'un control lorsqu'il reçoit le focus

Bonjour xhudi69

C'est ce que je viens d'ajouter dans mon édition du message précédent ;)
(avec quelques nuances malgré tout ;) )
(BAM! nous étions dans la même minute)
 
Dernière édition:

xhudi69

XLDnaute Accro
Re : changer la couleur d'un control lorsqu'il reçoit le focus

bonjour crisud, le Forum,

Hé oui Staple1600 ça c'est de la synchro ;)

En PJ pour crisud le fichier avec mon exemple sur les différents évennements d'un TextBox à adapter selon l'humeur ;)

@+ :cool:
 

Pièces jointes

  • V5.xlsm
    24.6 KB · Affichages: 47

laetitia90

XLDnaute Barbatruc
Re : changer la couleur d'un control lorsqu'il reçoit le focus

bonjour crisud ,xhudi69, Jean Marie:):)

il y a quelque temps j'avais bosse sur une soluc ....dans une classe pour s'affranchir de GetFocus & LostFocus... pb.. de scintillements

une soluc accepable sans exit & enter pas present dans une classe helas:mad:
 

Pièces jointes

  • classmousse2.xls
    62 KB · Affichages: 54
  • classmousse2.xls
    62 KB · Affichages: 45
  • classmousse2.xls
    62 KB · Affichages: 44

crisud

XLDnaute Nouveau
Re : changer la couleur d'un control lorsqu'il reçoit le focus

Bonsoir Laetitia90,,xhudi69, Jean Marie

çà c'est du travail collectif..... merci à toutes et tous pour votre retour.
grâce à votre aide, je peux à présent finir mon code.

Les solution se Xhudi69 et Jean Marie fonctionnent parfaitement
mais ce serait trop facile..... Laetitia90 a vu juste.... j'ai 120 contrôles, l'intuition féminine


Bon fin de week end à vous tous

Salutations
Christian
 
Dernière édition:

crisud

XLDnaute Nouveau
Re : changer la couleur d'un control lorsqu'il reçoit le focus

Si je peux me permettre d'abuser ?

j'ai tenté d'adapté le code de Laetitia90 à ma Userform qui comporte centaine de textbox et combobox
Mais je m'en sort pas
 

Pièces jointes

  • classmousse2-1.zip
    21.1 KB · Affichages: 27

laetitia90

XLDnaute Barbatruc
Re : changer la couleur d'un control lorsqu'il reçoit le focus

re tous :):):)

j'ai regarde ton fichier
j'ai pas pris en compte les textboxs TextSens & TextLibCompte vu que le Back style est transparent pas utile je pense

autrement pour simplifier j'utilise la propriéte tag donc "a" pour les textboxs & "b" pour les combos

dans l'iniatisation un code pour les controls renomées vu que 4 chronologie <>...... plus simple si rajout autres controls par la suite

on aurait pu faire qu'une seule classe avec combos & textboxs mais revoir la conception a l'origine pas envie de bosser:):) modif user

apres il faut voir comment tu renseigne cela..... ordre de tabulations ect...

dans mon code j'ai pas mis touche direction gauche & droite
leur keycode c'est
K=37 droite
K=39 gauche

seulement enter, tab, haut, bas , c'est tout rajoute si utilisation

Code:
If K = 13 Or K = 9 Or K = 40 Or K = 38 Then txt.BackColor = &HFFC0C0
 

Pièces jointes

  • Copie de classmousse2-1.xls
    100 KB · Affichages: 57

Statistiques des forums

Discussions
312 211
Messages
2 086 296
Membres
103 171
dernier inscrit
clemm