VBA CDATE - Ako používať CDATE v programe Excel VBA? (s príkladmi)

Funkcia CDATE vo VBA

VBA CDATE je funkcia prevodu dátových typov, ktorá prevádza dátový typ, ktorý je buď textový alebo reťazcový, na dátový dátový typ. Keď sa hodnota prevedie na dátový typ dátumu, môžeme sa pohrať s dátumovými údajmi.

Syntax CDATE

Nižšie je uvedená syntax funkcie CDATE vo VBA.

Výraz: Výrazom môže byť reťazec alebo textová hodnota alebo premenná, ktorá obsahuje hodnotu, ktorá sa má previesť na dátový typ dátumu.

CDATE identifikuje formát dátumu a času v počítači, na ktorom pracujeme, a prevedie dodanú hodnotu na rovnaký dátový typ dátumu. Ak zadáte iba deň a mesiac a ignorujete rok, potom funkcia CDATE vezme systémový rok, zobrazí sa spolu s dodaným dňom a mesiacom.

V nasledujúcej časti uvidíme ďalšie a ďalšie príklady.

Ako používať funkciu CDATE v programe Excel VBA?

Príklady funkcie CDATE v programe Excel VBA.

Príklad č

Skôr ako vám ukážem príklad CDATE, najskôr sa pozrite na nižšie uvedený kód.

Kód:

Sub CDATE_Example1 () Dim k As String k = "25-12" MsgBox k End Sub

Vo vyššie uvedenom prípade pre premennú „k“ som priradil hodnotu ako „25–12“. Keď vykonám tento kód, uvidíme rovnakú hodnotu v schránke správ vo VBA.

To je ale možné previesť na dátum pomocou funkcie VBA CDATE, pretože pre tento účel definujte ešte jednu premennú ako Date.

Kód:

Dim k1 k dátumu

Pre túto premennú „k1“ priraďuje funkciu CDATE a dodáva premennú „k“, ktorá obsahuje reťazec „25-12“. V poli pre správu sa zobrazuje premenná hodnota „k1“ namiesto „k“.

Kód:

k1 = CDate (k)

Teraz spustite kód a uvidíte výsledok v okne správy.

Výsledok je teda 25. 12. 2019.

Pozorne sa pozrite na hodnotu, ktorú sme dodali. Dodali sme „25-12“, ktoré sme nedodali rok.

Pri písaní tohto článku bol v mojom systéme aktuálny rok 2019, takže program VBA CDATE previedol do dnešného dňa hodnotu reťazca „25-12“ a pridal k nej systémový rok 2019. Takže konečné výsledky sa čítajú ako toto 12/25/2019 tj, 25 -tého decembra 2019.

Príklad č

Teraz sa pozrite na nižšie uvedený kód.

Kód:

Sub CDATE_Example2 () Dim k As Variant Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub

Vo vyššie uvedenom kóde pre premennú „k“ som použil číslo „43889“. Všetci vieme, že ide o sériové číslo, ale v prípade inej premennej „KResult“ sme túto hodnotu previedli doposiaľ pomocou funkcie „CDATE“.

Rovnaký výsledok premennej „KResult“ sa zobrazuje v okne správy.

Spustite kód a pozrite sa na kúzlo funkcie „CDATE“.

Výsledok sa zobrazuje ako 28. 2. 2020, ak nie ste oboznámení s dátumami v programe Excel, potom vás určite zaujíma, ako sa to stalo.

Napríklad zadajte rovnaké číslo (43889) do jednej z buniek tabuľky.

Na tento účel použite formát „DD-MM-RRRR.“

Teraz kliknite na Ok a pozrite si výsledok.

Výsledok sa teraz zmenil z výrobného čísla na dnešné dni. Pretože sme na sériové číslo použili formát dátumu, zobrazil sa príslušný dátum.

To znamená, že sériové číslo 43889 sa rovná dátumu 28-02-2020.

Takže v našom kóde VBA funkcia CDATE vykonala to isté prevedením hodnoty reťazca na dátový dátový typ.

Príklad č

V tomto príklade sa pozrite na nasledujúci kód.

Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "24. decembra 2019" Value2 = 25. 6. 2018 # Value3 = "18:30:48" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Hodnota3) Koncový sub

Keď spustíme tento kód, dostaneme nižšie uvedené výsledky.

Všetky hodnoty sú teda prevedené na dátový typ dátumu pomocou funkcie CDATE.

Na čo treba pamätať

  • CDATE prevádza iba číselné a reťazcové hodnoty na dátový typ dátumu.
  • Je to užitočné, keď ho používame s inými funkciami.
  • Ak sa zadá nesprávna hodnota dátového typu, zobrazí sa chyba nesúladu typov.
  • Pretože dátum a čas sú súčasťou sériového čísla, prevádza čas aj správny čas.

Zaujímavé články...