Een stopwatch maken in Excel (Basic + Toastmasters-stijl)

Toen ik bij IBM werkte, maakte ik deel uit van een ToastMasters International-club. Het is een plek waar je je communicatieve en leiderschapsvaardigheden kunt verbeteren.

Een interessant onderdeel van de wekelijkse vergaderingen was het spontaan spreken. In dit deel van de vergadering kreeg een persoon een onderwerp en moest hij/zij er 2 minuten over spreken. Er was een aangewezen persoon die de toespraak timede en een groene kaart liet zien na 1 minuut, een gele kaart om 1:30 minuten en een rode kaart na 2 minuten.

Meestal wordt een smartphone of een horloge gebruikt om de toespraak te timen, en de tijd die nodig is, wordt handmatig op papier vastgelegd.

Het komt vaak voor dat de persoon vergeet de gekleurde kaarten te laten zien of soms vergeet de timing voor de sprekers op te nemen (bij mij gebeurde dat altijd). Met deze dingen in gedachten heb ik een stopwatch in Excel gemaakt die zou helpen om de toespraken te timen en op te nemen.

Laten we eerst leren hoe u een eenvoudige stopwatch in Excel kunt maken.

Een stopwatch maken in Excel (basis)

Met een eenvoudige / eenvoudige stopwatch in Excel bedoel ik iets dat zou starten wanneer we op de startknop drukken en stoppen wanneer we op de stopknop drukken.

Iets zoals hieronder weergegeven:

Download deze Basis Stopwatch in Excel

Om deze stopwatch in Excel te maken, moet u weten over de Sollicitatie.Op tijd methode in VBA.

Application.OnTime-methode in VBA

De Application.OnTime-methode kan worden gebruikt wanneer u in de toekomst een bepaalde code wilt uitvoeren. U kunt het bijvoorbeeld gebruiken om een ​​berichtvenster weer te geven om u eraan te herinneren na 1 uur op te staan ​​en uw benen te strekken of om na 3 uur medicijnen te gebruiken.

Syntaxis van Application.OnTime-methode:

Toepassing.OnTime(Vroegste tijd, Procedure, Laatste tijd, Planning)

  • EarliestTime: het tijdstip waarop u de procedure wilt uitvoeren.
  • Procedure: De naam van de procedure die moet worden uitgevoerd.
  • LatestTime (optioneel): Als er een andere code actief is en uw opgegeven code niet op het opgegeven tijdstip kan worden uitgevoerd, kunt u de LatestTime opgeven waarop deze moet wachten. Het kan bijvoorbeeld EarliestTime + 45 zijn (wat betekent dat het 45 seconden zal wachten voordat de andere procedure is voltooid). Als zelfs na 45 seconden de procedure niet kan worden uitgevoerd, wordt deze verlaten. Als u dit niet opgeeft, wacht Excel totdat de code kan worden uitgevoerd en voert deze vervolgens uit.
  • Planning (optioneel): indien ingesteld op True, wordt een nieuwe tijdprocedure gepland. Indien False, annuleert het de eerder ingestelde procedure. Standaard is dit True.

Een voorbeeld van Application.OnTime-methode

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

Het eerste deel van de macro gebruikt de Application.OnTime-methode en voert de procedure ShowMessage (tussen dubbele aanhalingstekens) na vijf seconden uit. De ShowMessage-procedure toont gewoon het berichtvenster met de prompt HELLO.

U kunt deze indeling gebruiken om elke procedure uit te voeren na een opgegeven tijd vanaf de huidige tijd.

Laten we nu met dit concept kijken naar de code voor het maken van een eenvoudige stopwatch in Excel.

Dim NextTick As Date, t As Date Sub StartStopWatch() t = Time Call StartTimer End Sub Sub StartTimer() NextTick = Time + TimeValue("00:00:01") Range("A1").Value = Format(NextTick - t - TimeValue("00:00:01"), "uu:mm:ss") Application.OnTime NextTick, "StartTimer" End Sub Sub StopTimer() Bij fout Volgende toepassing hervatten.OnTime EarliestTime:=NextTick, Procedure:= "StartTimer", Schedule:=False End Sub

Deze code bestaat uit 3 delen:

  • Het eerste deel initialiseert de huidige tijd naar de variabele t. Dan roept het een andere procedure StartTimer aan.
  • De StartTimer-procedure gebruikt een variabele NextTick die elke seconde met 1 wordt verhoogd. In het werkblad heeft cel A1 de lopende timer zoals we hebben opgegeven NextTick - t -TimeValue ("00:00:01"), "uu:mm:ss") als de waarde in die cel. Vervolgens wordt de StartTimer-code na elke seconde opnieuw uitgevoerd.
  • StopTimer annuleert de Application.Ontime-procedure door de planningswaarde False te maken. Hierdoor stopt de timer.

Dit is wat je krijgt met de bovenstaande code (ik heb de macro's toegewezen aan de start/stop-knoppen):

Dit is een standaard stopwatch in Excel.

Ik noem het eenvoudig omdat je niet in het midden kunt stoppen en opnieuw kunt beginnen waar je was gebleven. Het zal altijd herstarten vanaf 1 wanneer u op de startknop drukt.

Nu u de basisprincipes van de Application.OnTime-methode hebt geleerd, kunt u dit eenvoudig aanpassen om elke gewenste stopwatch in Excel te maken.

Stopwatch in Excel (voor ToastMasters)

Ik heb het hierboven besproken concept gebruikt en een Stopwatch in Excel gemaakt die kan worden gebruikt in de Toastmasters-vergadering (die ik aan het begin van deze tutorial noemde).

Dit zijn de dingen die u kunt doen met deze stopwatch:

  • U kunt de timer stoppen en vervolgens opnieuw starten vanaf hetzelfde tijdstip (tot dan toe opgenomen).
  • U kunt de timer resetten. Hiermee wordt de timerwaarde op 0 gezet. Zodra u dat doet, wordt automatisch de totaal verstreken tijd bijgehouden.
  • Het verandert de kleur van het timervak, afhankelijk van de stopwatchwaarde (dit kan een goede herinnering zijn om de groene/gele/rode kaarten te tonen).

Hier is hoe het eruit ziet:

In deze bovenstaande demo heb ik de kleurverandering elke vijf seconden ingesteld. U kunt eenvoudig aangeven wanneer u wilt dat de kleur verandert (de groene kaart na 1 minuut, gele kaart na 1,5 minuut en een rode kaart na 2 minuten) door de waarden in het rekenblad te wijzigen.

Zodra u op de resetknop drukt, wordt de kleur van de timer weer wit, wordt de waarde van de timer 0 en wordt de tijd in kolom G geregistreerd.

Opmerking: aangezien deze bestanden macro's bevatten, moet u macro's inschakelen voordat u deze kunt gebruiken. Wanneer u de werkmap opent, ziet u een gele knop - Inhoud inschakelen. Klik erop om macro's in te schakelen.

Als je iets leuks maakt met een timer, deel het dan met mij.

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave