VBA timer - Primjeri korištenja funkcije Excel VBA Timer

Funkcija Excel VBA TIMER

VBA Timer je ugrađena funkcija koja se koristi da bi nam dala djelimičnu vrijednost sekundi, vrlo je korisna funkcija koja se koristi za pauziranje bilo kojeg skupa kodova koji se pokreću ili njihovo ponovno pokretanje na temelju vremena koje je pružio korisnik, timer je jednostavno koristi se kao iskaz u VBA s unosom vremena.

Jednostavno rečeno, TIMER daje ukupan broj sekundi od ponoći tekućeg dana. Pravo iz prvog retka koda, zapravo možemo pratiti vrijeme koje naš kod troši za dovršetak postupka navedenog u potpostupku.

Ponekad kada napišete kôd i želite testirati trajanje koda, tj. Koje je ukupno vrijeme potrebno vašem kodu za dovršenje potprocedure. Testiranjem stvarnog trajanja vašeg koda, možete učiniti svoj kôd učinkovitim i ukloniti dugotrajan postupak brisanjem neželjenih ili dugih kodova iz vašeg modula.

Kako koristiti funkciju TIMER u VBA?

Kao što sam rekao, funkcija TIMER se vraća, ukupne sekunde koje su prošle od ponoći trenutnog datuma. Kad pišem ovaj članak, u Indiji je vrijeme 13:50:45.

Stvorio sam ime makronaredbe i dodijelio vrijednost TIMER u okviru VBA poruke.

Kodirati:

Sub Timer_Example1 () MsgBox Timer End Sub

Kada pokrenem ovaj kod, dobio sam rezultat 50480.08.

Ovo su ukupne sekunde koje su prošle od današnje ponoći, tj. Od 00:00:00 AM.

Dakle, od ponoći 12 do trenutnog vremena 14:01:20, prošlo je ukupno 14 sati 1 minuta i 20 sekundi. U sekundama je jednako 50480,08, što daje naša funkcija TIMER.

Primjeri

Primjer # 1 - Izračunajte ukupno vrijeme provedeno vašim kodom

Sada ćemo izvršiti neko jednostavno kodiranje kako bismo testirali vrijeme koje je VBA trebalo da izvrši postupak. Napisao sam kod, kao što je prikazano na donjoj slici.

Kodirati:

Sub Do_Until_Example1 () Dim ST As Single ST = Timer Dim x As Long x = 1 Do Until x = 100000 Cells (x, 1) .Value = xx = x + 1 Loop MsgBox Timer - ST End Sub

Ako sada pokrenem ovaj kôd, pokazat će mi ukupno vrijeme potrebno VBA za izvršenje.

Kaže 3.058594. Rezultat koji daje ova funkcija izražen je u sekundama, tj. Ukupno vrijeme provedeno ovim kodom je 3,058 sekundi.

Da biste vi koristili kôd, napisao sam donji kod za vas.

Kodirati:

Sub Timer_Example1 () Dim StartingTime kao pojedinačno StartingTime = Timer 'Unesite kod ovdje' Unesite kod ovdje 'Unesite kod ovdje' MsgBox Timer - StartingTime End Sub

Upotrijebite gore navedeno i upišite svoj kôd nakon koda StartingTime = Timer, ali prije koda MsgBox Timer - StartingTime, tj. U zelenom području morate unijeti svoj kôd.

Objašnjenje: Prvo, varijabla StartingTime = Timer znači da je u vrijeme pokretanja koda jednako vremenu proteklom od ponoći do vremena izvođenja koda.

Timer - StartingTime: Znači nakon pokretanja koda, koje je proteklo vrijeme minus vrijeme zabilježeno na početku koda kroz varijabilno vrijeme početka .

To će dati razliku između vremena početka i završetka i vratiti rezultat.

Primjer # 2 - Prikažite rezultat u ispravnom formatu vremena

Kao što smo vidjeli, rezultat koji funkcija daje u sekundama, ali ne u točnom formatu. Međutim, možemo primijeniti VBA vremenski format na krajnji rezultat pomoću funkcije FORMAT.

Upotrijebite donji kod da biste vidjeli rezultat u ispravnom vremenskom formatu, tj. Formatu „hh: mm: ss“.

Ovdje sam koristio funkciju FORMAT. Rezultat daje (Timer - vrijeme početka). Podijelio sam ga s brojem 86400 da bih ga pretvorio u sekunde prema pravilima vremenskog formata, zatim sam primijenio format vremena u satu, minuti i drugom formatu.

Sada, ako pokrenem kôd, dat će ovakav rezultat.

Dakle, ukupno vrijeme potrebno kodu je 3 sekunde.

Ljepota ovog koda je trenutak kada pređe 60 sekundi; rezultat će pokazati za nekoliko minuta. Pauzirao sam svoj kôd na minutu (koristeći Ctrl + Break) i vidjet ću rezultat.

Dakle, ukupno vrijeme koje ovaj kod uzima sada je 1 minuta 2 sekunde.

Primjer # 3 - Alternativni kod za odbrojavanje

Postoji alternativa TIMERU pomoću funkcije NOW () . Ispod je alternativni kod.

Stvari koje treba zapamtiti

  • Funkcija TIMER zadržava vrijednost na kraju dana, tj. U 23:59:59 PM.
  • Funkcija SADA vraća trenutni datum i trenutno vrijeme.
  • TIMER prikazuje ukupne sekunde protekle od trenutnog datuma u ponoć.

Zanimljivi članci...