VBA laikmačio funkcija

VBA laikmačio funkcijos grąžina sekundžių skaičių, praėjusį nuo dabartinės dienos vidurnakčio (pateikiamas kaip vieno tipo duomenys).

Naudojant VBA laikmačio funkciją

Šis kodas parodys, kaip naudoti VBA laikmačio funkciją, norint nustatyti, kiek sekundžių buvo praleista nuo vidurnakčio tuo metu, kai vykdomas kodas:

12345678 Naudojant funkciją „TheVBATimerFunction“ ()Tamsios sekundėssecondsSince = Laikmatis ()Derinimas. Spausdinimo sekundėsPabaiga Sub

Rezultatas yra toks:

Naudokite VBA laikmatį, kad gautumėte tikrąjį laiką

Naudodami šį kodą, galite konvertuoti sekundes, gautas iš laikmačio funkcijos, į hh: mm: ss formatą, kad pamatytumėte tikrąjį laiką:

123456789101112131415 Sub GettingTheActualTime ()Tamsios sekundės„Dim cTime As Double“„Dim theActualTime As Variant“secondsSince = Laikmatis ()cTime = secondsSince / (86400)theActualTime = Formatas (cTime, "hh: mm: ss")„MsgBox“ „Laikas, praėjęs nuo vidurnakčio sekundėmis, yra„ & ““ ir sekundėsNuo & vbNewLine & _„Tikrasis laikas yra:„ & ““ ir „theActualTime“Pabaiga Sub

Rezultatas yra toks:

Laikas VBA kodo skyrius

Jei norite palyginti perrašytą kodą arba diskutuoti apie „greitesnius“ metodus VBA, galite naudoti įmontuotą VBA laikmatį. Nustačius kintamąjį, lygų laikmačiui, kodo pradžioje ir atėmus jį iš laikmačio pabaigoje, gausite geras įvertinimas kiek laiko užtrunka kodo gabalas.

Našumui, be kita ko, gali turėti įtakos kitos programos, kurios veikia arba bandomos paleisti, kol esate aktyvus.

Toliau pateiktas pavyzdys buvo naudojamas norint pamatyti, kiek užtruks užrašyti žodį „testas“ 1 lapo A1 langelyje pusę milijono kartų. Mano mašinoje užtruko 21 sekundę.

123456789101112131415161718 Sub BenchMark ()Šviesiai skaičiuoti kaip ilgai„Dim BenchMark As Double“„BenchMark“ = laikmatis„Kodo testavimo pradžiaSkaičiuoti = nuo 1 iki 500 0001 lapas. Ląstelės (1, 1) = "testas"Kitas grafas„Bandomo kodo pabaiga„MsgBox“ laikmatis - „BenchMark“Pabaiga Sub

Jei kodas veikia lėtai, pabandykite jį pagreitinti išjungdami ekrano atnaujinimą. Kad „Excel“ ekranas būtų aktyvus, kol veikia laikmatis, į kodą galime įterpti „DoEvents“ metodą.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave