VBA taimer | Näited Exceli VBA taimeri funktsiooni kasutamiseks

Exceli VBA taimeri funktsioon

VBA taimer on sisseehitatud funktsioon, mida kasutatakse sekundite murdosa väärtuse andmiseks, see on väga kasulik funktsioon, mida kasutatakse mõnikord mis tahes töötavate koodikomplektide peatamiseks või nende jätkamiseks kasutaja antud aja põhjal, taimer on lihtsalt kasutatakse VBA-s avaldusena koos aja sisestamisega.

Lihtsamalt öeldes annab Taimer praeguste päevade südaööst möödunud sekundite koguarvu. Juba koodi esimesest reast saame tegelikult jälgida meie koodi kulutatud aega alamprotseduuris määratud protsessi lõpuleviimiseks.

Mõnikord, kui kirjutate koodi ja soovite testida koodi kestust, st kui palju on teie koodil alamprotseduuri lõpuleviimiseks kulunud aega. Testides oma koodi tegelikku kestust, saate oma koodi tõhusamaks muuta ja aeganõudva protsessi välistada, kustutades soovimatud või pikad koodid oma moodulist.

Kuidas kasutada funktsiooni TIMER VBA-s?

Nagu ma ütlesin, tagastab funktsioon TIMER kogu praeguse kuupäeva südaööst möödunud sekundite koguarvu. Selle artikli kirjutamise aeg on Indias kell 13:50:45.

Olen loonud makro nime ja määranud VBA sõnumikasti väärtuse TIMER.

Kood:

 Alamtaimer_näide1 () MsgBoxi taimer Lõpp-alam 

Selle koodi käivitamisel sain tulemuseks 50480,08.

See on sekundite koguarv, mis möödus tänasest keskööst, st kell 00:00:00

Nii et südaööst 12 praeguse ajani 14:01:20 on möödunud kokku 14 tundi 1 minut 20 sekundit. Mõne sekundi jooksul on see võrdne 50480,08-ga, mille annab meie TIMER-funktsioon.

Näited

Selle VBA Timer Exceli malli saate alla laadida siit - VBA Timer Exceli mall

Näide # 1 - arvutage oma koodi kogu aeg kokku

Nüüd teostame mõne lihtsa kodeerimise, et testida VBA protseduuri läbiviimiseks kuluvat aega. Olen kirjutanud koodi, nagu on näidatud alloleval pildil.

Kood:

 Alam Do_Until_Eexample1 () Dim ST ühe ST = taimer Dim x nii pikk x = 1 Do Kuni x = 100000 lahtrit (x, 1). Väärtus = xx = x + 1 silmus MsgBox taimer - ST End Sub 

Kui käivitan selle koodi nüüd, näitab see mulle kogu VBA täitmiseks kulunud aega.

See ütleb 3.058594, selle funktsiooni antud tulemus on sekundites, st kogu selle koodi kulunud aeg on 3.058 sekundit.

Et saaksite koodi kasutada, kirjutasin teile allpool oleva koodi.

Kood:

 Sub Timer_Example1 () Dim StartingTime Single StartingTime = Timer 'Sisestage oma kood siia' Sisestage oma kood siia 'Sisestage oma kood siia' Sisestage oma kood siia MsgBox Timer - StartingTime End Sub 

Kasutage ülaltoodut ja sisestage kood pärast koodi StartingTime = Taimer, kuid enne koodi MsgBox Timer - StartingTime, st rohelisele alale peate sisestama oma koodi.

Selgitus: esiteks muutuja StartingTime = Taimer tähendab, et koodi käivitamise ajal võrdub aeg südaööst koodi tööajani kulunud ajaga.

Taimer - StartingTime: see tähendab pärast koodi käivitamist, kui palju on kulunud aega, millest lahutatakse koodi alguses registreeritud aeg muutuva algusajaga .

See annab alguse ja lõpu aja erinevuse ning annab tulemuse.

Näide # 2 - näita tulemust õiges ajavormingus

Nagu nägime, on funktsiooni antud tulemus sekundites, kuid mitte täpses vormingus. Siiski võime lõpptulemusele rakendada VBA-vormingut funktsiooni FORMAT abil.

Kasutage allolevat koodi, et näha tulemust õiges ajavormingus, st vormingus “hh: mm: ss”.

Olen siin kasutanud funktsiooni FORMAT. Tulemuse annab (Taimer - algusaeg). Olen selle jaganud arvuga 86400, et teisendada see sekundite järgi vastavalt ajavormingu reeglitele, seejärel olen rakendanud ajavormingu tunnis, minutis ja teises vormingus.

Kui ma koodi käivitan, annab see sellise tulemuse.

Niisiis, kogu koodi kuluv aeg on 3 sekundit.

Selle koodi ilu on hetk, kui see ületab 60 sekundit, näitab tulemust minutites. Olen oma koodi töötamise minutiks peatanud (kasutades klahve Ctrl + Break) ja näen tulemust.

Seega on selle koodi kogu aeg 1 minut 2 sekundit.

Näide # 3 - taimeri alternatiivne kood

TIMERile on alternatiiv funktsioon NOW () abil. Allpool on alternatiivne kood.

Asjad, mida meeles pidada

  • Funktsioon TAIMER puhkab väärtust päeva lõpus, st kell 23:59:59.
  • Funktsioon NOW tagastab praeguse kuupäeva ja kellaaja.
  • TIMER näitab praeguse kuupäeva keskööst möödunud sekundite koguarvu.

$config[zx-auto] not found$config[zx-overlay] not found