VBA Timer - Eksempler på bruk av Excel VBA Timer-funksjon

Innholdsfortegnelse

Excel VBA TIMER-funksjon

VBA Timer er en innebygd funksjon som brukes til å gi oss den brøkdelte verdien av sekunder, det er en veldig nyttig funksjon som brukes til å stoppe ethvert sett med koder på pause eller gjenoppta dem på grunnlag av tiden som er gitt av brukeren, timeren er ganske enkelt brukt som en uttalelse i VBA med innspill av tid.

Enkelt sagt gir TIMER det totale antall sekunder som er gått fra midnatt på dagens dag. Rett fra linje en i koden kan vi faktisk spore tiden det tar av koden vår for å fullføre prosessen som er spesifisert i underprosedyren.

Noen ganger når du skriver en kode, og du vil teste kodens varighet, dvs. hva er den totale tiden det tar av koden din å fullføre delprosedyren. Ved å teste den faktiske varigheten som koden din tar, kan du gjøre koden effektiv og eliminere den tidkrevende prosessen ved å slette uønskede eller lange koder fra modulen din.

Hvordan bruker jeg TIMER-funksjonen i VBA?

Som jeg fortalte TIMER-funksjonen, returneres de totale sekundene forbi fra midnatt til gjeldende dato. Når jeg skriver denne artikkelen, er tiden 13:50:45 i India.

Jeg har opprettet et makronavn og tilordnet verdien til TIMER i VBA-meldingsboksen.

Kode:

Sub Timer_Example1 () MsgBox Timer End Sub

Når jeg kjører denne koden, fikk jeg resultatet som 50480.08.

Dette er de totale sekundene som gikk forbi fra dagens midnatt, dvs. fra 12:00:00.

Så fra midnatt 12 til nåværende tid 14:01:20, totalt 14 timer 1 minutt, 20 sekunder gått forbi. På få sekunder er det lik 50480.08, som er gitt av TIMER-funksjonen vår.

Eksempler

Eksempel # 1 - Beregn den totale tiden det tar av koden din

Nå skal vi utføre noen enkle kodinger for å teste tiden det tar av VBA å utføre prosedyren. Jeg har skrevet noe kode, som vist på bildet nedenfor.

Kode:

Sub Do_Until_Example1 () Dim ST som enkelt ST = Timer Dim x Så lenge x = 1 Gjør inntil x = 100000 celler (x, 1). Verdi = xx = x + 1 Loop MsgBox Timer - ST End Sub

Hvis jeg kjører denne koden nå, vil den vise meg den totale tiden det tar av VBA å utføre.

Det står 3.058594. Resultatet gitt av denne funksjonen er i sekunder, dvs. at den totale tiden det tar med denne koden er 3.058 sekunder.

For at du skal bruke koden, har jeg skrevet koden nedenfor for deg.

Kode:

Sub Timer_Example1 () Dim StartingTime Som Single StartingTime = Timer 'Tast inn koden din her' Skriv inn koden din her 'Tast inn koden din her' Skriv inn koden din her MsgBox Timer - StartingTime End Sub

Bruk ovennevnte og skriv inn koden din etter koden StartingTime = Timer, men før koden MsgBox Timer - StartingTime, dvs. i et grønt område, må du oppgi koden.

Forklaring: For det første betyr variabelen StartingTime = Timer når koden kjøres, er lik tiden som har gått fra midnatt til kodetid.

Timer - Starttid: Det betyr at etter at du har kjørt koden, hva er tiden som er gått minus tiden registrert i begynnelsen av koden inn gjennom variabel starttid .

Dette vil gi forskjellen mellom start- og sluttid og returnere resultatet.

Eksempel 2 - Vis resultatet i riktig tidsformat

Som vi har sett, er resultatet gitt av funksjonen i sekunder, men ikke i et nøyaktig format. Vi kan imidlertid bruke et VBA-tidsformat til sluttresultatet ved å bruke FORMAT-funksjonen.

Bruk koden nedenfor for å se resultatet i riktig tidsformat, dvs. “hh: mm: ss” -format.

Jeg har brukt FORMAT-funksjonen her. Resultatet er gitt av (Timer - starttid). Jeg har delt det med nummeret 86400 for å konvertere det til sekunder i henhold til tidsformatreglene, så har jeg brukt tidsformatet i en time, minutt og andre format.

Nå, hvis jeg kjører koden, vil det gi resultatet slik.

Så den totale tiden det tar av koden er 3 sekunder.

Skjønnheten til denne koden er øyeblikket den krysser 60 sekunder; resultatet vil vises på få minutter. Jeg har satt koden min på pause i et minutt (ved hjelp av Ctrl + Break) og ser resultatet.

Så den totale tiden det tar av denne koden er nå 1 minutt og 2 sekunder.

Eksempel 3 - Alternativ kode til tidtaker

Det er et alternativ til TIMER ved å bruke NOW () -funksjonen. Nedenfor er den alternative koden.

Ting å huske

  • TIMER-funksjonen vil hvile verdien på slutten av dagen, dvs. klokka 23:59:59.
  • NOW-funksjonen returnerer gjeldende dato og gjeldende tid.
  • TIMER viser de totale sekundene som er gått fra den gjeldende datoen midnatt.

Interessante artikler...