VBA CDATE | Kako uporabiti CDATE v Excelu VBA? (s primeri)

Funkcija CDATE v VBA

VBA CDATE je funkcija pretvorbe podatkovnega tipa, ki pretvori podatkovni tip, ki je bodisi besedilo bodisi niz, v podatkovni tip datuma. Ko je vrednost pretvorjena v podatkovni tip datuma, se lahko poigramo z datumskimi stvarmi.

Sintaksa CDATE

Spodaj je sintaksa funkcije CDATE v VBA.

Izraz: Izraz je lahko vrednost niza ali besedila ali spremenljivka, ki vsebuje vrednost, ki jo je treba pretvoriti v podatkovni tip datuma.

CDATE prepozna obliko datuma in ure v računalniku, v katerem delamo, in pretvori priloženo vrednost v isti podatkovni tip datuma. Če navedete samo dan in mesec in prezrete leto, potem funkcija CDATE sistemsko vzame leto, prikaže se skupaj z dobavljenim dnevom in mesecem.

V spodnjem razdelku bomo videli vedno več primerov.

Kako uporabiti funkcijo CDATE v Excelu VBA?

Primeri funkcije CDATE v excelu vba.

To predlogo VBA CDATE Excel lahko prenesete tukaj - Predloga VBA CDATE Excel

Primer # 1

Preden vam pokažem primer CDATE, najprej poglejte spodnjo kodo.

Koda:

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

V zgornjem za spremenljivko "k" sem vrednost določil kot "25-12". Ko izvedem to kodo, bomo v polju za sporočila v VBA videli enako vrednost.

Vendar je to mogoče pretvoriti v datum s pomočjo funkcije VBA CDATE. Za to določite še eno spremenljivko kot datum.

Koda:

 Dim k1 Kot datum 

Za to spremenljivko “k1” dodelite funkcijo CDATE in podajte spremenljivko “k”, ki vsebuje niz “25-12”. In za okno za sporočilo namesto „k“ prikažite spremenljivko „k1“.

Koda:

k1 = CDate (k)

Zdaj zaženite kodo in v oknu za sporočilo si oglejte rezultat.

Rezultat je torej "25.12.2019".

Pozorno si oglejte vrednost, ki smo jo dobavili, dobavili smo “25-12”, ki je nismo dobili leto.

Med pisanjem tega članka je bilo trenutno leto v mojem sistemu 2019, zato je VBA CDATE do danes pretvoril vrednost niza »25-12« in mu dodal sistemsko leto 2019. Končni rezultati se torej glasijo tako 25.12.2019, torej 25. decembra 2019.

2. primer

Zdaj si oglejte spodnjo kodo.

Koda:

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

V zgornji kodi za spremenljivko "k" sem uporabil številko "43889". Vsi vemo, da je to serijska številka, vendar smo za drugo spremenljivko »KResult« to vrednost pretvorili do danes s pomočjo funkcije »CDATE«.

Isti rezultat spremenljivke "kResult", prikazan v polju za sporočilo.

Zaženite kodo in si oglejte čarobnost funkcije “CDATE”.

Rezultat je prikazan kot “28.2.2020”. Če niste seznanjeni z datumi v Excelu, se gotovo sprašujete, kako se je to zgodilo.

Na primer, vnesite eno številko (43889) v eno od celic preglednice.

Za to uporabite obliko "DD-MM-LLLL".

Zdaj kliknite V redu in si oglejte rezultat.

Zdaj se je rezultat iz serijske številke spremenil do danes. Ker smo uporabili obliko datuma na vrhu serijske številke, je ta prikazal ustrezen datum.

To pomeni, da je serijska številka 43889 enaka datumu 28. februarja 2020.

Torej je v naši kodi VBA funkcija CDATE izvedla isto stvar s pretvorbo vrednosti niza v podatkovni tip datuma.

3. primer

Za ta primer si oglejte spodnjo kodo.

 Sub CDATE_Example3() Dim Value1 Dim Value2 Dim Value3 Value1 = "December 24, 2019" Value2 = #6/25/2018# Value3 = "18:30:48 PM" MsgBox CDate(Value1) MsgBox CDate(Value2) MsgBox CDate(Value3) End Sub 

When we run this code we will get the below results.

So, all the values are converted to the date data type with the CDATE function.

Things to Remember

  • CDATE converts only numbers and string values to the date data type.
  • This is useful when we use it with other functions.
  • If the wrong data type value is supplied then we will get type mismatch error.
  • Since date and time are part of serial number it converts time as well as proper time.