Excel VBA IDŐZÍTŐ - Hogyan kell használni a VBA TIMER funkciót?

Tartalomjegyzék:

Anonim

VBA TIMER

Az Excel VBA TImer program bármilyen tevékenység elvégzéséhez szükséges idő felismerésére és kiszámítására szolgál. Az Excel alkalmazásban a VBA TIMER funkciót sokféle módon lehet használni. Kiszámolhatjuk bármilyen tevékenység elvégzéséhez szükséges időt, kiszámolhatjuk azt az időt, amely ahhoz szükséges, hogy elérjük bármely tevékenység kezdete és vége közötti fázist, vagy akár kiszámolhatjuk az időt is, amelyre szükség van bármelyik funkcióra való kattintáshoz.

Ez a funkció nem hajtható végre excelben. Excelben csak az időt láthatjuk és hozzáadhatjuk bármely cellához, de nem tudjuk időmérőként mérni.

Itt letöltheti ezt a VBA TIMER Excel sablont - VBA TIMER Excel sablon

1. példa

Ebben a példában megtudjuk, hogyan számolhatjuk meg vagy mértük meg az időt a kitöltött kód futtatásához. Ehhez lépjen a VBA menübe, és válassza az alább látható módon egy modult.

Ha ezt megtesszük, új modul nyílik meg, az alább látható módon. Írja be az aktuális funkciónév alkategóriáját vagy bármely más nevet, amelyet választott.

Kód:

 Sub Timer1 () Sub 

Most határozza meg a két dimenziót, mint Másodperc1 és Másodperc2, mint SINGLE függvény, ami azt jelenti, hogy két egyedi adat létezett (tizedes nélkül).

Kód:

 Sub Timer1 () tompított másodperc1 mint egyetlen tompított másodperc2 mint egyetlen vég sub 

Az időzítő elindításához először válassza ki a Másodperc1 meghatározott méretet, és rendelje hozzá az Időzítő funkciót. És tegye ugyanezt a Második Másod dimenzióval, mint az alább látható. Ennek célja az idő kezdete és vége mérése.

Kód:

 Második időzítő1 () tompított másodperc1 mint egyetlen halvány másodperc2 mint egyetlen másodperc1 = időzítő () másodperc2 = időzítő () 

Ez befejezi a kód időzítő részét. Most látnunk kell az idő telik el a kód futtatásában. Ehhez ki kell nyomtatnunk a kimenetet az üzenet mezőbe, az alább látható módon.

Az alábbi képernyőképen kinyomtattuk az „Idő eltelt:” szöveget, valamint a Seconds2 és a Seconds1 közötti különbséget egység másodpercekkel.

Kód:

 Sub Timer1 () Dim Seconds1 mint Single Dim Seconds2 Egyszeri másodpercként1 = Timer () Seconds2 = Timer () MsgBox ("Időtartam:" & vbNewLine & Seconds2 - Seconds1 & "seconds") Sub befejezése 

Ha kész, futtassa a teljes kódot az F5 billentyű használatával vagy a lejátszás gombra kattintva, az alább látható módon.

Látni fogjuk egy üzenet mezőt, amelynek számított ideje 0 másodperc, mivel a teljes kód futtatásához szükséges idő 0 volt.

Kissé nagyobb különbséget láthatunk, ha az írott kód hatalmas.

2. példa

Van egy másik módszer, ahol bármilyen kis összegű időtúllépést választhatunk várakozási időként, és hagyhatjuk, hogy a felhasználó vagy az üzemeltető várjon, amíg a folyamat befejeződik. Ezt fel lehet használni, ha létrehozunk egy szerszámot vagy makrót egy hatalmas kódszerkezet-sorral. Ezzel megengedjük a felhasználónak, hogy várjon, amíg a teljes kód futni kezd, és a művelet befejeződik. Mivel a kód futtatásakor a kód futása közben összeomolhat a fájl.

Ehhez nyisson meg egy új modult, és írja be az Alkategóriát a kívánt függvény nevére vagy bármelyik névre, az alább látható módon.

Kód:

 Sub Timer2 () Befejezés Sub 

Most, hogy ez a kód kicsi és egyszerű legyen, a VBA beépített funkcióit fogjuk használni. És ehhez a típushoz az alkalmazás pontot (.) Követ, majd a listából keresse meg és válassza az Alább látható Várakozás funkciót.

Ez a Várakozás funkció lehetővé teszi számunkra, hogy hozzáadjuk a várakozási időt, amíg a teljes kód el nem fut. Ez a várakozási idő logikai. Ezután fontolja meg a 0 másodpercig futó időt plusz idővel, amelyet meg akarunk mutatni, mivel a várakozási időt a TimeValue mutatja az alábbiak szerint.

Kód:

 Sub Timer2 () Application.Wait Now + TimeValue ("00:00:10") End Sub 

Itt 10 másodpercet tekintünk várakozási időnek a kód futtatásának befejezéséhez.

Most, hogy kinyomtassuk a várakozási időt, ki kell nyomtatnunk az üzenetet az üzenet mezőbe az MsgBox parancs segítségével, az alább látható módon.

Kód:

 Sub Timer2 () alkalmazás.Várjon most + Időérték ("00:00:10") MsgBox ("Várakozási idő - 10 másodperc") Vége Sub 

Mint láthatjuk, az üzenet mezőbe a „ Várakozási idő - 10 másodperc ” szöveget egészítjük ki, amelyet ki kell nyomtatni.

Most futtassa a kódot F5 billentyűvel vagy manuálisan. Miután 10 másodpercet vártunk, látni fogjuk, hogy egy üzenődoboz jelenik meg a kódban használt üzenettel.

3. példa - VBA időzítő

Van egy másik egyszerű módszer a VBA aktuális idejének megtekintésére és megjelenítésére. Ehhez közvetlenül az MsgBox-ot és a többi kódot csak ott fogjuk használni. Ehhez nyisson meg egy új modult a VBA-ban, és írjon be alkategóriát a használt függvény nevére vagy bármely más névre, az alább látható módon.

Kód:

 Sub Timer3 () Befejezés Sub 

Most írja az MsgBox-ot, amely parancs az üzenet kinyomtatásához. A zárójelben bármilyen kinyomtatható üzenetet írhatunk az üzenet mezőbe. Itt az „ Idő van: ” lehetőséget választottuk, mint a szöveget, és ezzel együtt a „ & Now () ” -t. Megjeleníti az aktuális időt a dátummal a felbukkanó üzenet mezőben.

Kód:

 Sub Timer3 () MsgBox ("Idő:" & Most ()) Vége a Sub 

Most egy másik üzenetdobozban az óra szerint számoljuk a teljes nap alatt eltelt másodpercek számát az aktuális időig. Ehhez írja az MsgBox és a zárójelek közé az „ Timer is: ” szöveget, az „ & Timer () ” szöveggel együtt, az alább látható módon.

Kód:

 Sub Timer3 () MsgBox ("Idő:" és most ()) MsgBox ("Timer is:" & Timer ()) Sub vége 

Ha kész, futtassa a kódot az F5 billentyűvel vagy manuálisan. Két külön üzenődobozt kapunk, amint az alább látható.

Az első üzenet mezőben az aktuális dátumot és időt kapjuk NN / HH / ÉÉÉÉ formátumban, hh: hh: ss AM / PM formátumban, amely az alapértelmezett Excel formátum. A második üzenetmezőben másodpercben látjuk az adott napban eltelt időt.

A második üzenetmező azt mutatja, hogy az Időzítő 59953, 62 másodperc. Ha ezt 60 másodperc és 60 perc alatt osztjuk meg, akkor a pontos időmérőt aznap eltelt órákban kapjuk meg, amely 16, 65 óra .

Ne feledje, mi a VBA TIMER

  • Mindig mentse a fájlt a Marco Enabled Workbookba, hogy elkerülje az írott VBA kód elvesztését.
  • Mindig állítsa le a teljes kódot lépésről lépésre, hogy megbizonyosodjon arról, hogy minden kód helytelen.
  • Az 1. példában a SINGLE funkcióval a számot egészként mutatjuk be. Még ha DOUBLE-t is használunk, akkor az eredmény tizedes lesz.

Ajánlott cikkek

Ez egy útmutató az Excel VBA TIMER-hez. Itt megvitattuk a VBA TIMER funkció használatát, néhány gyakorlati példával és letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket is -

  1. Hogyan kell használni a VBA hibanyilatkozatot?
  2. Számformátum a VBA-ban
  3. Hogyan kell használni a VBA Find Function funkciót?
  4. Oktatóanyagok a VBA TRIM funkcióról