Čas VBA - Ako používať časovú funkciu Excel VBA? (Príklady)

Obsah:

Anonim

Excel VBA Čas

Funkcia VBA TIME vracia aktuálny čas ako výstup a môže sa tiež použiť ako vstup do rôznych riadkov makra kódu. Táto funkcia nemá nastavený žiadny parameter, a preto má zďaleka najjednoduchšiu syntax ako slovo TIME s prázdnymi zátvorkami, ktoré je možné vidieť nižšie:

Syntax funkcie VBA TIME:

Time ()

V skutočnosti nie sú potrebné ani zátvorky, v bloku kódu môžete jednoducho použiť samotné slovo TIME, ktoré umožňuje vášmu systému vrátiť aktuálny čas. Podobnú funkciu nazývame aj NOW () v programe Excel VBA, ktorá vracia aktuálny čas spolu s dátumom. V tomto článku by sme sa však celé zamerali na používanie funkcie TIME a na skúmanie rôznych pracovných príkladov tejto funkcie.

Ako používať časovú funkciu Excel VBA?

Naučíme sa používať funkciu VBA Time s niekoľkými vynikajúcimi príkladmi.

Túto šablónu VBA Time Excel si môžete stiahnuť tu - VBA Time Excel Template

Časová funkcia VBA - príklad č. 1

Aktuálny systémový čas pomocou funkcie TIME:

Podľa nižšie uvedených krokov zobrazte aktuálny čas vášho systému.

Krok 1: Definujte čiastkový postup.

kód:

 Sub TimeExample1 () End Sub 

Krok 2: Definujte premennú, ktorá bude užitočná pre držanie hodnoty času za vás. Definujte to ako String.

kód:

 Sub TimeExample1 () Dim CurrentTime ako String End Sub 

Poznámka: Dôvodom definovania tejto premennej ako String je, že výstup funkcie TIME je v reťazci.

Krok 3: Pomocou funkcie VBA TIME priraďte aktuálny čas premennej definovanej v predchádzajúcom kroku pomocou operátora priradenia.

kód:

 Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time End Sub 

Krok 4: Ako som už spomenul, za funkciou TIME nie je potrebné pridávať zátvorky, pretože ide o prchavú funkciu. Avšak nasledujúci kód poskytne ekvivalentný výstup v porovnaní s vyššie uvedeným kódom.

kód:

 Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () End Sub 

Krok 5: Teraz pomocou funkcie MsgBox zobrazte aktuálny čas pomocou okna so správou na displeji.

kód:

 Sub TimeExample1 () Dim CurrentTime ako reťazec CurrentTime = Time () MsgBox CurrentTime End Sub 

Krok 6: Spustite tento kód stlačením klávesy F5 alebo Run a pozrite si výstup. Výstup by ste mali získať tak, ako je to znázornené na obrázku nižšie.

Upozorňujeme, že čas uvedený na obrázku vyššie je čas, v ktorom sa tento kód spustí v systéme. Aj keď to vyskúšate sami, váš výstup sa môže líšiť v závislosti od času, v ktorom pracujete na tomto kóde.

Časová funkcia VBA - príklad č. 2

VBA TIME v kombinácii s funkciou Dátum vráti aktuálny čas s dnešným dátumom:

Ako už bolo uvedené v úvode tohto článku, v programe Microsoft Excel existuje funkcia s názvom NOW (), ktorá vám poskytuje aktuálny dátum aj čas. Pozri obrázok nižšie.

Vo VBA však táto funkcia nefunguje. Preto vo VBA musíme použiť kombináciu funkcií VBA Date a VBA TIME na získanie aktuálneho dátumu a aktuálneho času. Dátum VBA udáva aktuálny dátum a čas VBA udáva aktuálny čas (čo sme už videli v prvom príklade).

Pozrime sa krok za krokom, ako to môžeme dosiahnuť.

Krok 1: Vložte nový modul do skriptu Excel VBA.

Krok 2: Definujte novú čiastkovú procedúru pomenovaním makra.

kód:

 Príklad 2 () Koniec sub 

Krok 3: Chceli sme, aby bol náš výstup uložený v bunke A1 nášho excelu. Za týmto účelom začnite písať kód nižšie.

kód:

 Podpoložka2 () Rozsah ("A1") Hodnota = Koniec podpr 

Krok 4: Teraz použite kombináciu funkcií VBA DATE a VBA TIME, ako je to znázornené nižšie, a priraďte jej hodnotu bunke A1.

kód:

 Čiastkový príklad 2 () Rozsah („A1“). Hodnota = Dátum & „“ & Časový koniec Sub 

Funkcia DATE vráti aktuálny dátum systému a funkcia TIME vráti aktuálny čas. Biely priestor uzavretý v úvodzovkách („“) umožňuje mať v konečnom výstupe medzeru medzi dátumom a časom. Dvaja operátori (a) pracujú ako zreťazujúci operátori, ktorí spájajú DÁTUM a ČAS s medzerou v ňom.

Krok 5: Spustite kód ručným stlačením klávesy F5 alebo Run. Výstup v bunke A1 vášho pracovného hárka uvidíte ako ranu:

Znova upozorňujeme, že čas, ktorý sa odráža v bunke A1, je dátum a čas, do ktorého tento kód spracujem sám. Preto keď spustíte tento kód, výstupy sa budú líšiť.

Hodnoty dátumu a času môžeme tiež formátovať pomocou funkcie NumberFormat v rámci VBA.

Krok 6: Do skriptu VBA napíšte kód uvedený nižšie.

kód:

 Čiastkový príklad2 () Rozsah ("A1"). Hodnota = Dátum a "" a časové rozpätie ("A1"). NumberFormat = "dd-mmm-rrrr hh: mm: ss AM / PM" End Sub 

Krok 7: Stlačte kláves F5 alebo Spustiť manuálne a v bunke A1 pracovného listu uvidíte výstup uvedený nižšie.

Časová funkcia VBA - príklad # 3

Funkcia VBA TIME na sledovanie otváracieho času a dátumu zošita:

Niekedy existuje jedna tabuľka, ktorú často otvárame (napríklad zoznam zamestnancov v organizácii) a do nej robíme zmeny. Mohli by sme mať záujem poznať dátum a čas, kedy boli zmeny vykonané v pracovnom liste. Funkciu VBA Time môžete použiť na sledovanie dátumu a času pri každom otvorení zošita. Postupujte podľa nasledujúcich krokov.

Krok 1: V pracovnom zošite programu Excel vytvorte nový pracovný hárok a podľa potreby ho premenujte. Premenujem ho na (Time_Track).

Krok 2: Dvakrát kliknite na ThisWorkbook v časti VBE (Visual Basics Editor).

Krok 3: Z rozbaľovacieho zoznamu objektov vyberte zošit namiesto zo Všeobecné.

Krok 4: Uvidíte novú súkromnú čiastkovú procedúru, ktorá bude definovaná pod názvom Workbook_Open () vo VBE.

kód:

 Súkromný podšit zošit_Open () Koniec pod 

Krok 5: Zapíšte si nižšie uvedený kód do tohto čiastkového makropostupu, ako je to znázornené na obrázku nižšie:

kód:

 Private Sub Workbook_Open () Dim LB As Long LB = Sheets ("Time_Track"). Buňky (Rows.Count, 1) .End (xlUp) .Row + 1 Sheets ("Time_Track"). Buňky (LB, 1) .Value = Dátum & "" & Čas () Koniec Sub 

Tu je definovaná premenná LB typu Long, aby sa zistila bunka vedľa poslednej použitej bunky, kde sa dá výstup uložiť. Potom sme pomocou kombinácie funkcií DÁTUM VBA a ČAS priradili hodnotu pod danú bunku.

Krok 6: Spustite kód manuálnym stlačením tlačidla F5 alebo Spustiť a pozrite si výstup v stĺpci A pracovného hárka.

Tento kód uloží hodnotu dátumu a času pri každom otvorení pracovného hárka Time_Track.

Toto je z tohto článku. Poďme veci zabaliť napísaním niektorých vecí, ktoré si treba zapamätať.

Čo je potrebné pamätať

  • Funkcia VBA TIME ukladá výstup ako reťazec v Exceli. Môžeme ho však tiež uložiť ako formát dátumu a namiesto reťazca definovať premennú ako dátum.
  • Funkcia TIME v nej nevyžaduje žiaden argument. Je to volatilná funkcia.
  • Na vyvolanie funkcie nepotrebujú ani zátvorky. Iba TIME stačí na získanie aktuálneho času.
  • Funkcia TIME štandardne ukladá časovú hodnotu vo formáte hh: mm: ss (formát hodín 24 hodín). Výstupný formát však niekedy závisí aj od formátu systémového času.

Odporúčané články

Toto bol sprievodca funkciou času VBA. Tu sme diskutovali o tom, ako používať Excel VBA Časové funkcie a tiež sme sa naučili Kombináciu dátumu a času ako alternatívu k funkcii Now () a sleduje otvorené záznamy zošita spolu s niekoľkými praktickými príkladmi a šablónou Excel vo formáte Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Ako vytvoriť Excel VBA MsgBox?
  2. WORKDAY Excel Funkcia | vzorec
  3. Sprievodca VBA robiť, keď slučky
  4. Vložte dátum v Exceli