GNT sans publicité, site mobile, fonctionnalitées exclusives...

Pause et reprise dans chrono

Le
Laurent brizais
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton pause/reprise. Mais
je n'arrive pas à refaire partir le chrono la ou il s'était arrété il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:02 54,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chrono http://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent
Lire les 10 réponses

Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
francois.forcet
Le #5293101
On 17 jan, 21:47, "Laurent brizais"
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton pause/reprise. Mais
je n'arrive pas à refaire partir le chrono  la ou il s'était arrét é il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:02 54 ,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chronohttp://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent


Salut à toi

Je te propose de gérer le temps écoulé suite à une pause dans une
cellule par exemple A2

je modifie dans cette obtique ta macro Chrono ainsi :

Dim MsCount, Tps, Cent
DoEvents
MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
Cent = MsCount Mod 100
UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

dans laquelle je prend en considération la valeur de la cellule A2
dans le compteur de départ
La cellule A2 suit le compteur au fil de son évolution
Si je mets en pause le compteur s'arrète et la cellule A2 prend sa
valeur au moment de l'arrêt
Lors de la reprise le compteur prend la valeur 0 + la valeur A2 donc
redémarre avec la valeur obtenue à l'arret

Si je stop je force la valeur de la cellule A2 à 0 en mettant dans le
code correspondant la ligne Range ("A2") = 0 ce qui donne :

Private Sub CommandButton2_Click() 'Stop
Range("A2") = 0
EnMarche = False
TimerOff
If CheckBox1 Then
Range("A1").NumberFormat = "hh:mm:ss.00"
Range("A1").Value = Label1
End If
End Sub

De même pour le départ :

Private Sub CommandButton1_Click() 'Start
Range("A2") = 0
If EnMarche = False Then
TimerOn 10
EnMarche = True
End If
End Sub

Si donc je stop ou je démarre la cellule A2 étant à 0 le compteur
démarre à 0

On peux sans problème changer de cellule de référence

Celà devrait te convenir

Dis moi !!!

Laurent brizais
Le #5291821
Bonjour François,

Merci pour ton aide, mais il y a un souci de format que je n'arrive pas à
resoudre, entre un format standard type 0 et format type heure 00:00:00,0
cela ce passe je crois dans le module macro au niveau du rajout de la
cellule A2

MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")

il y a je pense une discordance dans les formats lors de l'addition.

Mais le principe reste excellent.

A+ Laurent









Merci

On 17 jan, 21:47, "Laurent brizais"
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton pause/reprise.
Mais
je n'arrive pas à refaire partir le chrono la ou il s'était arrété il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:02 54,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chronohttp://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent


Salut à toi

Je te propose de gérer le temps écoulé suite à une pause dans une
cellule par exemple A2

je modifie dans cette obtique ta macro Chrono ainsi :

Dim MsCount, Tps, Cent
DoEvents
MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
Cent = MsCount Mod 100
UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

dans laquelle je prend en considération la valeur de la cellule A2
dans le compteur de départ
La cellule A2 suit le compteur au fil de son évolution
Si je mets en pause le compteur s'arrète et la cellule A2 prend sa
valeur au moment de l'arrêt
Lors de la reprise le compteur prend la valeur 0 + la valeur A2 donc
redémarre avec la valeur obtenue à l'arret

Si je stop je force la valeur de la cellule A2 à 0 en mettant dans le
code correspondant la ligne Range ("A2") = 0 ce qui donne :

Private Sub CommandButton2_Click() 'Stop
Range("A2") = 0
EnMarche = False
TimerOff
If CheckBox1 Then
Range("A1").NumberFormat = "hh:mm:ss.00"
Range("A1").Value = Label1
End If
End Sub

De même pour le départ :

Private Sub CommandButton1_Click() 'Start
Range("A2") = 0
If EnMarche = False Then
TimerOn 10
EnMarche = True
End If
End Sub

Si donc je stop ou je démarre la cellule A2 étant à 0 le compteur
démarre à 0

On peux sans problème changer de cellule de référence

Celà devrait te convenir

Dis moi !!!

francois.forcet
Le #5290381
On 19 jan, 14:16, "Laurent brizais"
Bonjour François,

Merci pour ton aide, mais il y a un souci de format que je n'arrive pas à
resoudre, entre  un format standard type 0 et format type heure 00:00:00 ,0
cela ce passe je crois dans le module macro au niveau du rajout de la
cellule A2

MsCount = GetTickCount - MsStart + Range("A2")
  Range("A2") = MsCount
  Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")

il y a je pense une discordance dans les formats lors de l'addition.

Mais le principe reste excellent.

A+ Laurent

Merci

On 17 jan, 21:47, "Laurent brizais"
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton pause/reprise .
Mais
je n'arrive pas à refaire partir le chrono la ou il s'était arrét é il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:02 54,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chronohttp://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent


Salut à toi

Je te propose de gérer le temps écoulé suite à une pause dans une
cellule par exemple A2

je modifie dans cette obtique ta macro Chrono ainsi :

Dim MsCount, Tps, Cent
  DoEvents
  MsCount = GetTickCount - MsStart + Range("A2")
  Range("A2") = MsCount
  Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
  Cent = MsCount Mod 100
  UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

dans laquelle je prend en considération la valeur de la cellule A2
dans le compteur de départ
La cellule A2 suit le compteur au fil de son évolution
Si je mets en pause le compteur s'arrète et la cellule A2 prend sa
valeur au moment de l'arrêt
Lors de la reprise le compteur prend la valeur 0 + la valeur A2 donc
redémarre avec la valeur obtenue à l'arret

Si je stop je force la valeur de la cellule A2 à 0 en mettant dans le
code correspondant la ligne Range ("A2") = 0 ce qui donne :

Private Sub CommandButton2_Click() 'Stop
    Range("A2") = 0
    EnMarche = False
    TimerOff
    If CheckBox1 Then
    Range("A1").NumberFormat = "hh:mm:ss.00"
    Range("A1").Value = Label1
    End If
End Sub

De même pour le départ :

Private Sub CommandButton1_Click() 'Start
    Range("A2") = 0
    If EnMarche = False Then
        TimerOn 10
        EnMarche = True
    End If
End Sub

Si donc je stop ou je démarre la cellule A2 étant à 0 le compteur
démarre à 0

On peux sans problème changer de cellule de référence

Celà devrait te convenir

Dis moi !!!


Rebonjour à toi

Effectivement aprés avoir comparé le fonctionnement avec et sans ma
modification les chronos ne tournent pas au même rythme

Je te propose ce code modifié pour la macro Chrono :

Dim MsCount, Tps, Cent
DoEvents
MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
If MsCount = 0 Then
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
Else
Tps = Format(Int(MsCount / 1000) / 86400, "hh:mm:ss")
End If
Cent = MsCount Mod 100
UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

Je pense que celà doit être nettement mieux

Dis moi !!!!


francois.forcet
Le #5290361
On 22 jan, 08:34, wrote:
On 19 jan, 14:16, "Laurent brizais"




Bonjour François,

Merci pour ton aide, mais il y a un souci de format que je n'arrive pas à
resoudre, entre  un format standard type 0 et format type heure 00:00: 00,0
cela ce passe je crois dans le module macro au niveau du rajout de la
cellule A2

MsCount = GetTickCount - MsStart + Range("A2")
  Range("A2") = MsCount
  Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss" )

il y a je pense une discordance dans les formats lors de l'addition.

Mais le principe reste excellent.

A+ Laurent

Merci

On 17 jan, 21:47, "Laurent brizais"
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton pause/repri se.
Mais
je n'arrive pas à refaire partir le chrono la ou il s'était arré té il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:0 2 54,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chronohttp://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent


Salut à toi

Je te propose de gérer le temps écoulé suite à une pause dans un e
cellule par exemple A2

je modifie dans cette obtique ta macro Chrono ainsi :

Dim MsCount, Tps, Cent
  DoEvents
  MsCount = GetTickCount - MsStart + Range("A2")
  Range("A2") = MsCount
  Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss" )
  Cent = MsCount Mod 100
  UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

dans laquelle je prend en considération la valeur de la cellule A2
dans le compteur de départ
La cellule A2 suit le compteur au fil de son évolution
Si je mets en pause le compteur s'arrète et la cellule A2 prend sa
valeur au moment de l'arrêt
Lors de la reprise le compteur prend la valeur 0 + la valeur A2 donc
redémarre avec la valeur obtenue à l'arret

Si je stop je force la valeur de la cellule A2 à 0 en mettant dans le
code correspondant la ligne Range ("A2") = 0 ce qui donne :

Private Sub CommandButton2_Click() 'Stop
    Range("A2") = 0
    EnMarche = False
    TimerOff
    If CheckBox1 Then
    Range("A1").NumberFormat = "hh:mm:ss.00"
    Range("A1").Value = Label1
    End If
End Sub

De même pour le départ :

Private Sub CommandButton1_Click() 'Start
    Range("A2") = 0
    If EnMarche = False Then
        TimerOn 10
        EnMarche = True
    End If
End Sub

Si donc je stop ou je démarre la cellule A2 étant à 0 le compteur
démarre à 0

On peux sans problème changer de cellule de référence

Celà devrait te convenir

Dis moi !!!


Rebonjour à toi

Effectivement aprés avoir comparé le fonctionnement avec et sans ma
modification les chronos ne tournent pas au même rythme

Je te propose ce code modifié pour la macro Chrono :

Dim MsCount, Tps, Cent
  DoEvents
  MsCount = GetTickCount - MsStart + Range("A2")
  Range("A2") = MsCount
  If MsCount = 0 Then
  Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
  Else
  Tps = Format(Int(MsCount / 1000) / 86400, "hh:mm:ss")
  End If
  Cent = MsCount Mod 100
  UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

Je pense que celà doit être nettement mieux

Dis moi !!!!- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Rebonjours à toi

Il subsiste un petit dysfonctionnement qui me pousse à te proposer de
rajouter la ligne :

Me.CommandButton3.Caption = "Pause"

dans la macro Start ainsi :

Private Sub CommandButton1_Click() 'Start
Range("A2") = 0
Me.CommandButton3.Caption = "Pause"
If EnMarche = False Then
TimerOn 10
EnMarche = True
End If
End Sub

et Stop :

Private Sub CommandButton2_Click() 'Stop
Range("A2") = 0
Me.CommandButton3.Caption = "Pause"
EnMarche = False
TimerOff
If CheckBox1 Then
Range("A1").NumberFormat = "hh:mm:ss.00"
Range("A1").Value = Label1
End If

End Sub

Si tu mets en pause et que tu actives le bouton stop ou start sans
passer par Reprise l'ensemble dysfonctionne au point même de fermer
sauvagement le classeur

Ainsi tu évites ce désagrément et tout marche nickel

Dis moi !!!!



Laurent brizais
Le #5289771
Bonsoir François,

Encore merci, mais mon chrono tourne 1000 fois trops vite, dans la macro je
suis passé de /1000 à /1000000 et je ne suis pas sur de l'exactitude, as-tu
le même probléme.
Autrement la pause et reprise super.

Amicalement laurent


On 22 jan, 08:34, wrote:
On 19 jan, 14:16, "Laurent brizais"




Bonjour François,

Merci pour ton aide, mais il y a un souci de format que je n'arrive pas
à
resoudre, entre un format standard type 0 et format type heure
00:00:00,0
cela ce passe je crois dans le module macro au niveau du rajout de la
cellule A2

MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")

il y a je pense une discordance dans les formats lors de l'addition.

Mais le principe reste excellent.

A+ Laurent

Merci

On 17 jan, 21:47, "Laurent brizais"
Bonsoir,

J'ai modifier un chrono excistant pour insérer un bouton
pause/reprise.
Mais
je n'arrive pas à refaire partir le chrono la ou il s'était arrété il
repart à zéro. Exemple je lance mon chrono je met en Pause 00:00:02
54,
j'appui de nouveau sur reprise il devrait repartir de cette valeur.

ci joint le chronohttp://cjoint.com/?brvNG5sqV0

Merci pour votre collaboration

Laurent


Salut à toi

Je te propose de gérer le temps écoulé suite à une pause dans une
cellule par exemple A2

je modifie dans cette obtique ta macro Chrono ainsi :

Dim MsCount, Tps, Cent
DoEvents
MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
Cent = MsCount Mod 100
UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

dans laquelle je prend en considération la valeur de la cellule A2
dans le compteur de départ
La cellule A2 suit le compteur au fil de son évolution
Si je mets en pause le compteur s'arrète et la cellule A2 prend sa
valeur au moment de l'arrêt
Lors de la reprise le compteur prend la valeur 0 + la valeur A2 donc
redémarre avec la valeur obtenue à l'arret

Si je stop je force la valeur de la cellule A2 à 0 en mettant dans le
code correspondant la ligne Range ("A2") = 0 ce qui donne :

Private Sub CommandButton2_Click() 'Stop
Range("A2") = 0
EnMarche = False
TimerOff
If CheckBox1 Then
Range("A1").NumberFormat = "hh:mm:ss.00"
Range("A1").Value = Label1
End If
End Sub

De même pour le départ :

Private Sub CommandButton1_Click() 'Start
Range("A2") = 0
If EnMarche = False Then
TimerOn 10
EnMarche = True
End If
End Sub

Si donc je stop ou je démarre la cellule A2 étant à 0 le compteur
démarre à 0

On peux sans problème changer de cellule de référence

Celà devrait te convenir

Dis moi !!!


Rebonjour à toi

Effectivement aprés avoir comparé le fonctionnement avec et sans ma
modification les chronos ne tournent pas au même rythme

Je te propose ce code modifié pour la macro Chrono :

Dim MsCount, Tps, Cent
DoEvents
MsCount = GetTickCount - MsStart + Range("A2")
Range("A2") = MsCount
If MsCount = 0 Then
Tps = Format(Int(MsCount + Range("A2") / 1000) / 86400, "hh:mm:ss")
Else
Tps = Format(Int(MsCount / 1000) / 86400, "hh:mm:ss")
End If
Cent = MsCount Mod 100
UserForm1.Label1.Caption = Tps & " " & Format(Cent, "00")

Je pense que celà doit être nettement mieux

Dis moi !!!!- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Rebonjours à toi

Il subsiste un petit dysfonctionnement qui me pousse à te proposer de
rajouter la ligne :

Me.CommandButton3.Caption = "Pause"

dans la macro Start ainsi :

Private Sub CommandButton1_Click() 'Start
Range("A2") = 0
Me.CommandButton3.Caption = "Pause"
If EnMarche = False Then
TimerOn 10
EnMarche = True
End If
End Sub

et Stop :

Private Sub CommandButton2_Click() 'Stop
Range("A2") = 0
Me.CommandButton3.Caption = "Pause"
EnMarche = False
TimerOff
If CheckBox1 Then
Range("A1").NumberFormat = "hh:mm:ss.00"
Range("A1").Value = Label1
End If

End Sub

Si tu mets en pause et que tu actives le bouton stop ou start sans
passer par Reprise l'ensemble dysfonctionne au point même de fermer
sauvagement le classeur

Ainsi tu évites ce désagrément et tout marche nickel

Dis moi !!!!



Publicité
Suivre les réponses
Poster une réponse
Anonyme