Création d'un chronomètre dans Excel (style de base + Toastmasters)

Pendant que je travaillais chez IBM, je faisais partie d'un club ToastMasters International. C'est un endroit où vous pouvez améliorer vos compétences en communication et en leadership.

Une section intéressante dans les réunions hebdomadaires était la parole impromptue. Dans cette partie de la réunion, une personne a reçu un sujet et elle a dû en parler pendant 2 minutes. Il y avait une personne désignée qui chronométrait le discours et montrait un carton vert à 1 minute, un carton jaune à 1h30 et un carton rouge au bout de 2 minutes.

Habituellement, un smartphone ou une montre est utilisé pour chronométrer le discours, et le temps pris est enregistré manuellement sur un papier.

Il arrive souvent que la personne oublie de montrer les cartes colorées ou oublie parfois d'enregistrer le timing des orateurs (cela m'est arrivé tout le temps). Avec ces choses à l'esprit, j'ai créé un chronomètre dans Excel qui aiderait à chronométrer et à enregistrer les discours.

Apprenons d'abord à créer un chronomètre de base dans Excel.

Comment créer un chronomètre dans Excel (de base)

Par un chronomètre simple/de base dans Excel, j'entends quelque chose qui démarrerait lorsque nous appuierons sur le bouton de démarrage et s'arrêterait lorsque nous appuierons sur le bouton d'arrêt.

Quelque chose comme indiqué ci-dessous :

Téléchargez ce chronomètre de base dans Excel

Pour créer ce chronomètre dans Excel, vous devez connaître les Application.À temps méthode en VBA.

Méthode Application.OnTime dans VBA

La méthode Application.OnTime peut être utilisée lorsque vous souhaitez exécuter un code spécifié à l'avenir. Par exemple, vous pouvez l'utiliser pour afficher une boîte de message pour vous rappeler de vous lever et de vous dégourdir les jambes après 1 heure ou de prendre des médicaments après 3 heures.

Syntaxe de la méthode Application.OnTime :

Application.OnTime(Le temps le plus tôt, Procédure, Heure la plus récente, Programme)

  • EarliestTime : L'heure à laquelle vous souhaitez exécuter la procédure.
  • Procédure : nom de la procédure à exécuter.
  • LatestTime (facultatif) : si un autre code est en cours d'exécution et que votre code spécifié ne peut pas être exécuté à l'heure spécifiée, vous pouvez spécifier le LatestTime pendant lequel il doit attendre. Par exemple, il peut s'agir de EarliestTime + 45 (ce qui signifie qu'il attendra 45 secondes pour que l'autre procédure soit terminée). Si même après 45 secondes la procédure ne peut pas s'exécuter, elle est abandonnée. Si vous ne le spécifiez pas, Excel attendra que le code puisse être exécuté, puis l'exécutera.
  • Programmer (facultatif) : si défini sur True, il programme une nouvelle procédure de temps. Si False, il annule la procédure précédemment définie. Par défaut, c'est Vrai.

Un exemple de méthode Application.OnTime

Sub test() Application.OnTime Now + TimeValue("00:00:05"), "ShowMessage" End Sub ShowMessage() MsgBox ("HELLO") End Sub

La première partie de la macro utilise la méthode Application.OnTime et exécute la procédure ShowMessage (entre guillemets) après cinq secondes. La procédure ShowMessage affiche simplement la boîte de message avec l'invite BONJOUR.

Vous pouvez utiliser ce format pour exécuter n'importe quelle procédure après une heure spécifiée à partir de l'heure actuelle.

En utilisant maintenant ce concept, examinons le code pour créer un chronomètre simple dans Excel.

Dim NextTick As Date, t As Date Sub StartStopWatch() t = Time Call StartTimer End Sub StartTimer() NextTick = Time + TimeValue("00:00:01") Range("A1").Value = Format(NextTick - t - TimeValue("00:00:01"), "hh:mm:ss") Application.OnTime NextTick, "StartTimer" End Sub Sub StopTimer() On Error Resume Next Application.OnTime EarliestTime:=NextTick, Procedure:= "StartTimer", Schedule :=False End Sub

Ce code comporte 3 parties :

  • La première partie initialise l'heure courante à la variable t. Ensuite, il appelle une autre procédure StartTimer.
  • La procédure StartTimer utilise une variable NextTick qui est incrémentée de 1 à chaque seconde qui passe. Dans la feuille de calcul, la cellule A1 a la minuterie en cours car nous avons spécifié NextTick - t -TimeValue ("00:00:01"), "hh:mm:ss") comme valeur dans cette cellule. Il exécute ensuite à nouveau le code StartTimer après chaque seconde.
  • StopTimer annule la procédure Application.Ontime en rendant la valeur de planification False. Cela arrête le chronomètre.

Voici ce que vous obtiendrez avec le code ci-dessus (j'ai assigné les macros aux boutons marche/arrêt) :

Ceci est un chronomètre de base dans Excel.

Je l'appelle basique car vous ne pouvez pas vous arrêter au milieu et redémarrer là où vous êtes parti. Il redémarrera toujours à partir de 1 lorsque vous appuyez sur le bouton de démarrage.

Maintenant que vous avez appris les bases de la méthode Application.OnTime, vous pouvez facilement la modifier pour créer le type de chronomètre que vous souhaitez dans Excel.

Chronomètre dans Excel (pour les ToastMasters)

J'ai utilisé le concept discuté ci-dessus et créé un chronomètre dans Excel qui peut être utilisé lors de la réunion Toastmasters (que j'ai mentionné au début de ce didacticiel).

Voici les choses qui peuvent être faites à l'aide de ce chronomètre :

  • Vous pouvez arrêter le chronomètre puis le redémarrer à partir de la même heure (enregistrée jusque-là).
  • Vous pouvez réinitialiser la minuterie. Cela définit la valeur de la minuterie à 0. Dès que vous faites cela, il enregistre automatiquement le temps total écoulé.
  • Cela change la couleur de la boîte de la minuterie, en fonction de la valeur du chronomètre (cela pourrait être un bon rappel pour afficher les cartes vertes/jaunes/rouges).

Voici à quoi cela ressemble :

Dans cette démo ci-dessus, j'ai réglé le changement de couleur toutes les cinq secondes. Vous pouvez facilement spécifier quand vous souhaitez que la couleur change (la carte verte à 1 min, la carte jaune à 1,5 minutes et une carte rouge à 2 minutes) en modifiant les valeurs dans la feuille de calcul.

Dès que vous appuyez sur le bouton de réinitialisation, la couleur de la minuterie redevient blanche, la valeur de la minuterie devient 0 et l'heure est enregistrée dans la colonne G.

Remarque : Étant donné que ces fichiers contiennent des macros, vous devrez activer les macros avant de les utiliser. Lorsque vous ouvrez le classeur, vous verrez un bouton jaune - Activer le contenu. Cliquez dessus pour activer les macros.

Si vous créez quelque chose de cool en utilisant une minuterie, partagez-le avec moi.

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave