Chronomètre suivi productivité

Bonjour à toutes et à tous,

Je suis débutant dans les codes VBA et je vous prie de bien vouloir m'aider. Pour mon entreprise je suis en train de mettre en place un fichier excel pour suivre l'activité des assistantes administratives.

Sur chaque ligne excel, elles doivent saisir une tâche exécutée

Dans la cellule suivante (colonne chrono = H) je veux y insérer un chrono qui sera commandé par 3 boutons (Play, Pause, Stop)

L'idée c'est qu'à chaque fois qu'elles cliqueront sur un de ces boutons, la cellule active de la colonne chrono (H) déclenche le chrono, soit le met en pause ou soit l'arrête.

Une assistante ne pouvant faire 2 choses à la fois, si le chrono de H10 par exemple tourne, lorsque j'active la cellule H11 et que je clique sur play, la cellule H10 se met automatiquement en pause.

Mais lorsque je reviens sur H10 et que je clique sur play le compteur continue là où il s'était arrêté.

Pour finir, en fin de journée le fichier excel est sauvegardé et fermé. Le lendemain si je clique de nouveau sur H10 par exemple et sur play, mon compteur doit continuer là où il s'était arrêté la veille. Lorsque je clique sur stop alors le compteur s'arrêtera définitivement

J'espère avoir été clair.

Merci d'avance pour votre aide.

Bonjour, ben576

Un fichier exemple trouvé sur le forum, et réalisé par mon ami Banzai64

Amicalement

Pierrot

resolu4

Bonjour le forum,

ben576 a écrit :

je veux y insérer un chrono qui sera commandé par 3 boutons (Play, Pause, Stop)

Shockwave : 3 boutons : Start, Stop, Reset.

633chrono.xlsx (27.82 Ko)

Bonjour mbbp

Excellent ton chrono, mais comment puis-je modifier la couleur des boutons ?

Amicalement

Pierrot

Bonjour Pierrot,

Merci pour ton message.

Il s'agit d'un shockwave : le chrono peut-être inséré dans un autre classeur, mais il n'est pas directement modifiable.

Cela dit, je peux te le procurer avec les couleurs des boutons désirées.

C'est gentil de me répondre si vite,

j'aimerais bien un bouton vert pour démarrer, Un bouton Orange pour pause au lieu de stop et un bouton Rouge pour Reset

Un tout grand merci pour ta gentillesse

Re,

Avec les couleurs demandées.

Bonne soirée.

519chrono-v2.xlsx (20.89 Ko)

Mon cher mbbp

c'est tout bonnement formidable, un tout grand merci pour ta gentillesse et bonne soirée à toi également.

Amitiés

Pierrot

Bonsoir à tous

D'abord je vous remercie beaucoup pour vos réponses et votre réactivité. Mais mon niveau de débutant m'empêche de décoller. Je me suis servi du code sur le fichier Chrono afin de le personnaliser à mon cas de figure mais cela ne marche pas.

En fait moi j'ai besoin que le chrono se lance dans toutes les cellules active tant qu'il s'agit d'une cellule de la colonne H.

Vous trouverez ci joint une copie de mon fichier excel et ci dessous mon code.

Je vous prie de bien vouloir m'aider et encore une fois merci d'avance.

Option Explicit

Dim ChronoEnCours As Boolean, Pause As Boolean

Dim Depart As Double, Temps As Double

Private Sub CommandButton8_Click()

' Bouton Play

If ActiveCell <> "" Then

MsgBox "cellule non vide"

Exit Sub

End If

If ActiveCell.Column <> 8 Then

MsgBox "Merci de cliquer d'abord dans la colonne Date et Heure de Fin"

Exit Sub

End If

If ChronoEnCours = True Then Exit Sub

ChronoEnCours = True

Depart = [now()]

Range("H8") = "00:00:00"

Chrono

End Sub

'Sub Compteur()

'Static S As Integer

' Do While Arret

' DoEvents

' If S <> Timer - T Then

' S = Timer - T

' [H8].Value = S

' End If

' Loop

'End Sub

Private Sub CommandButton2_Click()

' Bouton stop

ChronoEnCours = False

Pause = False

CommandButton3.Caption = "PAUSE"

Range("H8") = "00:00:00"

End Sub

Private Sub CommandButton3_Click()

' Bouton Pause

If Pause = True Then

Pause = False

CommandButton3.Caption = "PAUSE"

Depart = [now()] - Temps

ElseIf ChronoEnCours Then

Pause = True

CommandButton3.Caption = "CONTINUE"

End If

End Sub

Sub Chrono()

Do While ChronoEnCours = True

If Pause = False Then

Temps = [now()] - Depart

End If

'Range("H8") = Format(Temps, "hh:mm:ss.00")

Range("H8") = Temps

DoEvents

Loop

End Sub

Bonjour,

Une proposition.

Double-clic sur le n° de dossier en A ou sur le chrono en H pour le lancer ou l'arrêter.

Clic-droit pour le mettre en pause.

Problème résiduel : si tu n'arrêtes pas le chrono avant de fermer, le fichier se rouvre aussitôt. A la seconde fermeture c'est bon.

Je ne comprend pas encore pourquoi le schedule ne s'annule pas alors que j'ai mis ce qu'il faut dans Workbook_BeforeClose.

Ton fichier est boiteux, tu as 2 autres modules Thisworkbook qu'on ne peut supprimer. Sans doute dû à cela, à tester sur un classeur neuf.

Il y a du code dans Thisworkbook, Feuil7 et Module_Chrono

eric

Bonjour Eric

Comment puis je vous remercier. Je vous dis tout simplement et sincèrement MERCI.

Ne maîtrisant pas vraiment le codage VBA car en réalité c'est ma 1ère semaine, je ne vais pas me hasarder à corriger les soucis que vous évoquez dans mon fichier.

Déjà dans l'état actuel il me va très bien.

Mais j'espère que d'ici quelques mois mes connaissances me permettront de l'améliorer voire d'aider d'autres personnes sur cet excellent site.

Encore une fois merci

Il faut juste recréer la feuille dans un classeur neuf et y coller les macros.

3 ThisWorkbook qu'on ne peut effacer ce n'est pas normal. Ton classeur risque de devenir instable.

J'ai fait le plus gros, il te reste un peu de mise en page.

eric

237chrono-par-ligne.xlsm (19.41 Ko)
Rechercher des sujets similaires à "chronometre suivi productivite"