Programmation d'un Timer sous excel [Fermé]

Signaler
-
lermite222
Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
-
Bonjour,

Je vous expose mon problème! Je suis novice en tout ce qui concerne excel.
J'aimerais qu'un Timer se lance dans la case C2 lorsque j'entre la valeur "1" dans la case B2. Je travaille sous excel 2003.

Merci pour d'avance pour votre réponse.

9 réponses

Messages postés
6941
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 104
Bonjour,

Ici un exemple et un site à mettre dans les favoris de ton navigateur:

http://www.cathyastuce.com/index.php?tg=articles&topics=90

;o)
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 86481 internautes nous ont dit merci ce mois-ci

Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 067
Bonjour,
Tu veux un décompte dans la cellule C2 quand tu tape 1 en B2 ?
Clic gauche sur le nom de l'onglet et valider "Visualiser le code, dans la fenêtre ouverte tu colle le code ci-dessous...
Option Explicit 
Dim TM As Boolean 

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = "$B$2" Then 
        If Target = 1 Then 
            TM = True 
            Timer 
        Else 
            TM = False 
        End If 
    End If 
End Sub 

Sub Timer() 
Static S As Byte, B 
    While TM 
        If B <> Second(Now) Then 
            Range("C2") = S 
            S = S + 1 
            B = Second(Now) 
        End If 
        DoEvents 
    Wend 
End Sub

Tu revient sur ta feuille et tu tape 1 dans B2..
Pour arrèter tu change B2
A+

L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Merci à vous! Ca fonctionne! Super ;)
Peut être encore une autre question si je veux appliquer ce systeme à une colonne je pense que je dois changer l'adressage des cellules, je dois m'y prendre de quelle facon? Et aussi pour réinitialisé le processus je dois faire quoi?
Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 067
Ta première question je comprend pas bien ton problème ?
Pour la 2, tu change le code par...
Option Explicit

Dim TM As Boolean
Dim S As Long

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
        If Target = 1 Then
            TM = True
            Timer
        ElseIf Target = 2 Then
            TM = False
            S = 0: Range("C2") = S
        Else
            TM = False
        End If
    End If
End Sub

Sub Timer()
Dim B As Byte
    While TM
        If B <> Second(Now) Then
            Range("C2") = S
            S = S + 1
            B = Second(Now)
        End If
        DoEvents
    Wend
End Sub

Dans B2 tu tape... 1 = démarrage... 2 = arrèt et remise à zéro.. autre = stop sans réinitialiser.
A+
Ah super pour la réinitialisation ca fonctionne bien! Merci

Dans ma première question j'aimerais réalisé la même chose c'est a dire Timer qui se déclenche en tapant 1, s'arrête et se réinitialise si on tape 2, etc...

Mais le tout sur sur une colonne allant part exemple de B2 à B5 pour ce qui est des valeurs à entrer de type (1,2, autre) et les Timers correspondant dans les cellules C2 à C5.

Je suppose qu'il faut changer les valeurs des cellules pour y arriver ou bien?
Messages postés
6941
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 104
Bonjour,

Je pense que si tu avais dit tout de suite ce que tu voulais exactement, lermite n'aurait pas refait 3 fois le code pour te donner la solution.

Bonjour lermite, j'admire ta patience.

:o|
lermite222
Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 067
Bonjour Polux,
Je n'avais pas vu ton poste quand j'ai répondu :D
Dans un sens tu a raison mais bah, j'ai pas oublier que j'ai aussi été débutant, bien que cela fait.... longtemps.
A+
Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 067
Bon, un peu à toi de travailer, je te donne les pistes...
Créer autant de timer que de décompte à faire avec des noms par exemple Timer1, Timer2.. etc.
Assigner Les résultat dans les bonnes cellules.. C2, C3..
Modifier le test des cellule B2,B3.. et envoyer ou arrèter les bons timer.
Merci je suis déjà sur tes pistes c'est vrai merci de ta patience "lermite 222" tu m'as vraiment beaucoup aidé.

"Polux31" j'ai mentionné il me semble que j'étais débutant en excel, je me suis peut être mal exprimer pour faire comprendre mon problème mais je pense que ton commentaire n'avais pas lieu d'être il était vraiment inutile.

Mais merci encore "lermite 222" de ta patience et de ton aide et ta diplomatie ;)
Polux31
Messages postés
6941
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 104
Relis ton premier post et ta dernière demande. Ce n'est pas la même chose. Tu veux un vélo dans ton premier post, et tu réclames une moto dans le second.

Débutant ou pas, exprimer un besoin est élémentaire et permet de gagner beaucoup de temps.

Lis ma signature et tu auras tout compris. Et crois moi, mon commentaire est loin d'être inutile.
lermite222
Messages postés
8715
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 067
Lis ma signature et tu auras tout compris. Et crois moi, mon commentaire est loin d'être inutile.
+25