1 pièce(s) jointe(s)
Adapter petit code dans module de classe
Bonjour a toutes et tous, Forum bonjour
Je reviens vers vous a propos de mon module de classe qui fonctionne mais je n'arrive pas a adapter le bout de code a traiter.
Je ne vois plus comment faire après pleins d'essais et vous sollicite svp pour une aide.
Je m'explique:
A l’ouverture de l’UserForm tous les labels 0/9 à Z sont Violet >> Label 100 à 126 et tous les labels en dessous en Rose >> Label 127 à 153.
Si la souris n’ai plus dans un de ces labels alors retour à couleur Violet et Rose
But :
Au survol de la souris des labels 100 à 126 passent en Rouge puis reprends la couleur Violet quand on le quitte
et les labels dessous suivent le mouvement, mais la couleur change en Turquoise, comme voir svp Photo.
Je joins une photo plus simple qu'un long discours.
Je vous remercie pour temps et votre aide et vous souhaitent une très bonne journée.
Cordialement Ray
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| Dans Module de Classe baptisé ClasseLabels
Option Explicit
Public WithEvents GrLabels As Msforms.Label
Public Gest As Gestion_du_listing 'Nom de l'UserForm
Private Sub GrLabels_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal Y As Single)
Dim i As Integer
Set Gest = Gestion_du_listing
------------- Pour repartir de ce Code original ci-dessous
Private Sub Label100_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
For i = 100 To 126
With Me
If .Controls("Label" & i).Name = "Label100" Then
.Controls("Label" & i).BackColor = RGB(255, 0, 0) 'Rouge
.Controls("Label" & i + 27).BackColor = &HFFFF80 'Turquoise
If .Controls("Label" & i + 27).Caption <> "" Then
.TextBox3.Value = .Controls("Label" & i).Caption & " : " & .Controls("Label" & i + 27).Caption
Else
.TextBox3.Value = ""
End If
Else
If .Controls("Label" & i).BackColor <> &H800080 And _
.Controls("Label" & i + 27).BackColor <> &HC0C0FF Then
.Controls("Label" & i).BackColor = &H800080 'Violet
.Controls("Label" & i + 27).BackColor = &HC0C0FF 'Rose
End If
End If
End With
Next i
End Sub
Dans Module UserFrom Initialize:
Dim Btn(100 To 126) As New ClasseLabels
Dim i As Integer
'##### USERFORM INITIALIZE
Private Sub UserForm_Initialize()
For i = 100 To 126
Set Btn(i).GrLabels = Me("Label" & i)
Next i
End Sub |