IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Clignotement contrôle sélectionné.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Electricien - Outilleur
    Inscrit en
    Septembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Electricien - Outilleur
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2014
    Messages : 16
    Par défaut Clignotement contrôle sélectionné.
    Re-bonjour,

    Peut-on, si possible, faire clignoter un contrôle lors de sa sélection soit par clic souris, soit par tabulation ?

    Merci pour votre réponse.

  2. #2
    Membre éclairé Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Par défaut
    Bonsoir,

    Il est possible de changer l'aspect d'un controle sur le passage de la souris au dessus dudit controle.
    En voici le code:
    ! A mettre dans le formulaire où se trouve ces controles!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With CommandButton1
    .BackColor = &HC0&
    .ForeColor = &HFFFF&
    End With
     
    End Sub
     
    Private Sub CommandButton2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With CommandButton2
    .BackColor = &HC0&
    .ForeColor = &HFFFF&
    End With
     
    End Sub
     
    Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With CommandButton1
    .BackColor = &H8000000F
    .ForeColor = &H80000012
    End With
     
    With CommandButton2
    .BackColor = &H8000000F
    .ForeColor = &H80000012
    End With
    End Sub
    Voici un petit exemple.

    Merci du si la réponse a servi.
    Fichiers attachés Fichiers attachés

  3. #3
    Membre averti
    Homme Profil pro
    Electricien - Outilleur
    Inscrit en
    Septembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Electricien - Outilleur
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2014
    Messages : 16
    Par défaut
    J'ai fait le test mais ce n'est pas tout à fait ce que je voulais car c'est un clignotement demandée, je pensais qu'il aurait une fonction "flash" par exemple.
    Je retiens tout de même le principe et je verrais comment l'adapter à mon idée. Merci pour cette réponse et je reste preneur d'une solution adéquate à ma question.

  4. #4
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Bonjour.

    Voici une suggestion de clignotement avec UserForm1.ActiveControl et Application.OnTime

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    46
    47
    48
    49
    50
    51
    52
     
    'Dans un module
    Dim Heure As Date
     
    Public ctlPrecedent As Object
     
    Public ctlActif As Object
     
     
    Sub Clignoter()
     
    Set ctlActif = UserForm1.ActiveControl
    If ctlPrecedent Is Nothing Then
     Set ctlPrecedent = ctlActif
    End If
     
    If Not ctlActif Is Nothing Then
     
    If ctlPrecedent.Name <> ctlActif.Name Then
     
     ctlPrecedent.BackColor = vbWhite
     
     Set ctlPrecedent = ctlActif
     
    End If
     
     
    With UserForm1
    If ctlActif.BackColor = RGB(Abs(Val(.TextBox4)), Abs(Val(.TextBox5)), Abs(Val(.TextBox6))) Then
      ctlActif.BackColor = RGB(Abs(Val(.TextBox1)), Abs(Val(.TextBox2)), Abs(Val(.TextBox3))) 'vbGreen
    Else
      ctlActif.BackColor = RGB(Val(.TextBox4), Val(.TextBox5), Val(.TextBox6)) 'vbYellow
    End If
    End With
     
    End If
     
    Call Arreter
     
    Heure = Now + TimeValue("00:00:01")
     
    Application.OnTime Heure, "Clignoter"
     
    End Sub
     
    Sub Arreter()
     
    On Error Resume Next
     
    Application.OnTime Heure, "Clignoter", , schedule:=False
     
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    'Dans Userform1
    Private Sub UserForm_Activate()
     
    Set ctlActif = Nothing
    Set ctlPrecedent = Nothing
     
    Call Clignoter
     
    End Sub
     
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
     
    Call Arreter
     
    End Sub

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/10/2014, 13h48
  2. [XL-2010] un gros projet en Excel 2010 VBA
    Par PingouinJaune dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 15/10/2014, 13h17
  3. excel 2010 : VBA : graphiques se superposent
    Par markym dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/08/2014, 12h11
  4. [XL-2010] Impossible d'ouvrir un fichier excel 2010 (Vba)
    Par Nemesis-fr dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/12/2013, 14h57
  5. Refresh QueryTable (excel 2010 - VBA)
    Par cdurep dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 16/05/2013, 11h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo