Cellule clignotante

Bonjour,

J'ai créé une macro pour faire clignoter une cellule toute les secondes. Cette macro fonctionne très bien à l'ouverture du fichier mais au bout de quelques secondes s'il n'y a pas de déplacement de la souris, le clignotement ralenti de plus en plus jusqu'à plus de 30 secondes par allumage/extinction.

Un mouvement avec la souris suffit pour relancer le clignotement normal qui se remet à ralentir au bout de quelques secondes.

Voici le texte de la macro :

Dim Temps As Variant
Sub Auto_open()
'
' Auto_open Macro
' Macro enregistrée le 21/01/2004 par CRX
'
'
Dim NextTime As Date
Call Clign
End Sub
Public Sub Clign()
'Programmation de l'évènement toutes les secondes
Temps = Now + TimeValue("00:00:01")
Application.OnTime Temps, "Clign"
'Affiche l'alerte ou la fait disparaître (alternativement)
With ThisWorkbook
With .Sheets("Synthèse").Range("G3,G5,H5,I5,J5,K5,L5,M5,N5,O5,P5")
.Font.ColorIndex = IIf(.Font.ColorIndex = 1, 3, 1)
End With
End With
End Sub

Avez vous une explication ?

Merci

Edit Modo : merci d'utiliser les balises de code en cliquant sur 'icone </> dans la barre de menu et en collant vos codes dans le fenêtre

Salut 76tc9,

L'instruction OnTime mal placée..

Public Sub Clign()
'
'Programmation de l'évènement toutes les secondes
'Affiche l'alerte ou la fait disparaître (alternativement)
With ThisWorkbook
    With .Sheets("Synthèse").Range("G3,G5,H5,I5,J5,K5,L5,M5,N5,O5,P5")
        .Font.ColorIndex = IIf(.Font.ColorIndex = 1, 3, 1)
    End With
End With
Temps = Now + TimeValue("00:00:01")
Application.OnTime Temps, "Clign"
'
End Sub
15timeclign.xlsm (15.48 Ko)

A+

Merci pour cette réponse, mais le problème persiste. J'ai modifié la macro comme mentionné dans votre réponse mais c'est toujours pareil.

Je retrouve le même souci dans le fichier que vous m'avez transmis en pièce jointe.

Cordialement

Salut 76tc9,

en fait, placé comme avant ou comme je l'ai fait, après 1/4 d'heure, ici ça ne change rien et fonctionne normalement!
Autre chose dans ton code qui interfère?

A+

Merci Curulis,

Je ne vois pas ce qui pourrais interférer, c'est la seule macro du fichier. De plus sur le fichier que vous m'avez envoyé, il se passe le même phénomène.

Je suis sous Windows 10 à jour et Microsoft Office 2024 à jour (mises à jour automatiques)

Voici mon fichier.

Merci de prendre du temps, mais s'il n'y a pas de solution, ce n'est pas très grave !

Bonjour à vous deux !

Pour info chez moi votre fichier Curulis arrive avec une pause sur le rouge de plus en plus long...

Une proposition avec Do/DoEvents/Loop :

Une mise en route à l'ouverture, des boutons marche/arrêt pour gérer, un arrêt lors du changement de feuille car si la feuille n'est pas visible pas besoin de laisser tourner un code, une mise en marche auto lors de l'activation de la feuille.

Avec une tempo en Do/DoEvents/ Loop While, on peut gérer la temporisation au millième de seconde près (approximativement). dans dans la cellule D1 de la feuille 1 lors du clignotement (ou pas) vous pouvez modifier la valeur en seconde jusqu'au millième prés (0.001) et voir en direct la différence.

J'utilise ce genre de chose sur mes applications de jeu, le DoEvents permettant à l'utilisateur de garder la main sur l'application et visuellement il est moins lourd que le lancement d'une application OnTime (ce n'est que mon avis, de plus cette dernière est à la seconde près...). Je la trouve utile pour un déclenchement unique de code à une heure précise, du style fermeture du fichier à 19h00 !

@ bientôt

LouReeD

Bonsoir,

votre fichier modifié avec ma solution :

Voyez comme cela parait "souple" il n'y a pas visuellement de lancement de code, je veux dire par là que le curseur de souris ne passe pas en icône "sablier", la feuille reste vierge d'activité visuelle.

@ bientôt

LouReeD

Bonsoir tout le monde,

3 heures après avoir lancé le programme...

ontime

A+

sur le fichier que vous avez fourni, chez moi au bout de seulement 6 affichage de rouge, le noir reste plus longtemps, puis le rouge plus longtemps...

C'est comme si que le code s'appelait en boucle et de ce fait il y a chevauchement des demande de changement de couleur...

Difficile de prendre la vidéo... Mais bon c'est un détail, comme celui du sablier que je n'aime pas trop avec la fonction OnTime...
Au vu des téléchargements de ma proposition de toutes façons, je pense que je parle dans le vide !

@ bientôt

LouReeD

Edit : un essai en gif :

enregistrement 2025 10 25 232845

Bonjour,

une version avec deux temporisations une pour l'allumage et une pour l'extinction :

A savoir le Application.OnTime ne "supporte pas" le mode de saisie dans une cellule, si vous entrez du texte ou autre dans une cellule le fichier ci joint continue de clignoter mais les version OnTime s'arrêtent.

@ bientôt

LouReeD

re,

je suis d'accord que "Ontime" ne fonctionne pas bien quand on fait des choses dans la feuille, alors "Ontime" s'arrête... et aussi, je mettais dans mon premier écran, pendant que j'utilisais mon 2ième écran pour lire mes mails, bon, de temps en temps, j'avais des delais de 20 sec, bizarre.

A mon idée, il faut éviter les "1 sec", "2 sec" sera sans erreurs, je suppose, mais des choses clignotantes, cela m'énerve, il faut éviter cela.

J'ai aussi fait le teste avec ce que "excelforum.com" proposait avec un mouvement de la souris, à mon idée cela fonctionne quand on est sur l'écran active, pas comme chez moi, excel sur un écran et moi sur l'autre lisant mes mails. Voir PJ, feuille "Blad1", les plages oranges étaient avec ce mouvement de la souris, les autre sans. Les MFCs vertes et rouges montrent les anomalies. Les rouges, on ne les voit qu'à la première ligne des plages oranges, donc le "ontime" était encore lancé pendant l'autre période. Donc ce mouvement de la souris résoud le problème, mais c'est mieux d'oublier complètement ce clignotement ... .

Merci pour toutes les réponses

Je ne suis pas très doué et le seul fichier que j'arrive à faire fonctionner et qui correspond à mon attente, c'est le fichier de LouReeD d'hier à 20h58

Malheureusement, dès que je fais une modification de kilomètres et que j'enregistre je perd la personnalisation du ruban et je dois passer par l'onglet fichier pour enregistrer ou fermer le fichier à l'ouverture suivante. Et curieusement la personnalisation réapparait provisoirement

Je ne comprend pas pourquoi

Bonsoir,

à quel niveau changez vous le kilométrage ? Et de quel ruban "personnalisé" parlez vous ?
Je viens de me rendre compte que sur votre fichier "vélo" le clignotement s'arrête lors d'une saisie, alors que le fichier test fourni cela ne s'arrête pas...

@ bientôt

LouReeD

Les kilomètres s'ajoutent dans la colonne C.

Je parle du ruban supérieur ou l'on trouve par exemple les icones copier et coller dans l'onglet Accueil.

Ma personnalisation concerne les icones Enregistrer et Enregistrer sous que j'ai ajouté et qui disparaissent

Bonsoir,

alors du coup je ne comprends pas en quoi le code peut annuler votre ruban...

@ bientôt

LouReeD

Rechercher des sujets similaires à "clignotante"