VBA CDATE | Jak používat CDATE v aplikaci Excel VBA? (s příklady)

Funkce CDATE ve VBA

VBA CDATE je funkce převodu datového typu, která převádí datový typ, kterým je text nebo řetězec, na datový datový typ. Jakmile se hodnota převede na datový typ data, můžeme si pohrát s datem.

Syntaxe CDATE

Níže je uvedena syntaxe funkce CDATE ve VBA.

Výraz: Výraz může být řetězec nebo textová hodnota nebo proměnná, která obsahuje hodnotu, která má být převedena na datový typ data.

CDATE identifikuje formát data a času v počítači, na kterém pracujeme, a převede zadanou hodnotu na stejný datový typ data. Pokud zadáte pouze den a měsíc a ignorujete rok, pak funkce CDATE vezme systémový rok, zobrazí se spolu s dodaným dnem a měsícem.

V další části uvidíme další a další příklady.

Jak používat funkci CDATE v aplikaci Excel VBA?

Příklady funkce CDATE v aplikaci Excel VBA.

Tuto šablonu VBA CDATE Excel si můžete stáhnout zde - Šablona VBA CDATE Excel

Příklad č. 1

Než vám ukážu příklad CDATE, podívejte se nejprve na níže uvedený kód.

Kód:

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

Ve výše uvedeném případě pro proměnnou „k“ jsem přiřadil hodnotu „25-12“. Když spustím tento kód, uvidíme stejnou hodnotu v okně se zprávou ve VBA.

To však lze převést do dnešního dne pomocí funkce VBA CDATE. Za tímto účelem definujte ještě jednu proměnnou jako Datum.

Kód:

 Dim k1 jako datum 

U této proměnné „k1“ přiřaďte funkci CDATE a zadejte proměnnou „k“, která obsahuje řetězec „25-12“. A pro okno se zprávou zobrazte proměnnou hodnotu „k1“ namísto „k“.

Kód:

k1 = CDate (k)

Nyní spusťte kód a podívejte se na výsledek v okně se zprávou.

Výsledek je tedy „25.12.2019“.

Pečlivě se podívejte na hodnotu, kterou jsme dodali. Dodali jsme „25–12“, které jsme nedodali rok.

Při psaní tohoto článku byl aktuální rok v mém systému 2019, takže VBA CDATE převedl hodnotu řetězce „25-12“ k dnešnímu dni a přidal k ní systémový rok 2019. Konečné výsledky tedy čte takto 25. 12. 2019, tj. 25. prosince 2019.

Příklad č. 2

Nyní se podívejte na níže uvedený kód.

Kód:

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

Ve výše uvedeném kódu pro proměnnou „k“ jsem použil číslo „43889“. Všichni víme, že se jedná o sériové číslo, ale u jiné proměnné „KResult“ jsme tuto hodnotu převedli doposud pomocí funkce „CDATE“.

Stejný výsledek proměnné „kResult“, který je uveden v okně se zprávou.

Spusťte kód a podívejte se na kouzlo funkce „CDATE“.

Výsledek se zobrazuje jako „28. 2. 2020“, pokud nejste obeznámeni s daty v aplikaci Excel, musíte se divit, jak se to stalo.

Například zadejte stejné číslo (43889) do jedné z buněk v tabulce.

K tomu použijte formát „DD-MM-RRRR“.

Nyní klikněte na Ok a podívejte se na výsledek.

Nyní se výsledek změnil ze sériového čísla k dnešnímu dni. Protože jsme aplikovali formát data na začátek sériového čísla, ukázalo se příslušné datum.

To znamená, že sériové číslo 43889 se rovná datu 28-02-2020.

Takže v našem kódu VBA funkce CDATE provedla totéž převedením hodnoty řetězce na datový datový typ.

Příklad č. 3

V tomto příkladu se podívejte na níže uvedený kód.

 Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "24. prosince 2019" Value2 = # 6/25/2018 # Value3 = "18:30:48" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Hodnota 3) End Sub 

Když spustíme tento kód, dostaneme níže uvedené výsledky.

Takže všechny hodnoty jsou převedeny na datový typ data pomocí funkce CDATE.

Věci k zapamatování

  • CDATE převádí pouze čísla a hodnoty řetězců na datový typ data.
  • To je užitečné, když jej používáme s jinými funkcemi.
  • Pokud je zadána nesprávná hodnota datového typu, zobrazí se chyba neshody typu.
  • Protože datum a čas jsou součástí sériového čísla, převádí čas i správný čas.