VBA CDATE - Hvordan bruges CDATE i Excel VBA? (med eksempler)

Indholdsfortegnelse

CDATE-funktion i VBA

VBA CDATE er en datatypekonverteringsfunktion, der konverterer en datatype, der enten er tekst eller streng til en datadatatype. Når værdien er konverteret til datatype, kan vi lege med dato ting.

Syntaks for CDATE

Nedenfor er syntaksen for CDATE-funktionen i VBA.

Udtryk: Udtryk kan være en streng- eller tekstværdi eller en variabel, der indeholder en værdi, der skal konverteres til datadatatypen.

CDATE identificerer dato- og tidsformatet på den computer, vi arbejder på, og konverterer den leverede værdi til den samme datatype. Hvis du kun leverer dag og måned og ignorerer år, tager CDATE-funktionen systemets år, vises sammen med den leverede dag og måned.

Vi vil se flere og flere eksempler i nedenstående afsnit.

Hvordan bruges CDATE-funktionen i Excel VBA?

Eksempler på CDATE-funktion i Excel VBA.

Eksempel nr. 1

Før jeg viser dig eksemplet på CDATE, skal du først se på nedenstående kode.

Kode:

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

I ovenstående for variablen “k” har jeg tildelt værdien som “25-12”. Når jeg udfører denne kode, ser vi den samme værdi i meddelelsesboksen i VBA.

Men dette kan konverteres til dato ved hjælp af VBA CDATE-funktionen, for dette definerer en mere variabel som Dato.

Kode:

Dim k1 som dato

For denne variabel tildeler "k1" CDATE-funktionen og leverer variablen "k", som indeholder strengen "25-12". Og for meddelelsesfeltet viser den variable værdi på “k1” i stedet for “k.”

Kode:

k1 = CDate (k)

Kør nu koden og se resultatet i en meddelelsesboks.

Så resultatet er “12/25/2019”.

Se nøje på den værdi, vi har leveret. Vi har leveret "25-12", vi har ikke leveret år.

Mens jeg skrev denne artikel, var det aktuelle år i mit system 2019, så VBA CDATE konverterede strengværdien "25-12" til dato og tilføjede systemåret 2019 til den. Så endelige resultater læses som dette 2019/12/25 dvs. 25 th december 2019.

Eksempel 2

Se nu på nedenstående kode.

Kode:

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

I ovenstående kode for variablen “k” har jeg anvendt nummeret “43889”. Vi ved alle, at dette er et serienummer, men for en anden variabel, "KResult", har vi konverteret denne værdi til dato ved hjælp af "CDATE" -funktionen.

Det samme resultat af variablen “KResult” vises i meddelelsesfeltet.

Kør koden og se magien ved funktionen "CDATE."

Det viser resultatet som “28/2/2020”, hvis du ikke er bekendt med datoer i excel, så må du undre dig over, hvordan dette skete.

Indtast f.eks. Det samme nummer (43889) i en af ​​cellerne i regnearket.

Til dette skal du anvende formatet som "DD-MM-ÅÅÅÅ."

Klik nu på Ok og se resultatet.

Nu er resultatet ændret fra et serienummer til dato. Da vi har anvendt datoformat øverst på serienummeret, har det vist den respektive dato.

Så det betyder, at serienummeret 43889 er lig med datoen 28-02-2020.

Så i vores VBA-kode har CDATE-funktionen udført den samme ting ved at konvertere strengværdien til en datadatatype.

Eksempel 3

For dette eksempel skal du se på nedenstående kode.

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 ( Værdi3) Afslut sub

Når vi kører denne kode, får vi nedenstående resultater.

Så alle værdier konverteres til datadatatypen med CDATE-funktionen.

Ting at huske

  • CDATE konverterer kun tal og strengværdier til datadatatypen.
  • Dette er nyttigt, når vi bruger det med andre funktioner.
  • Hvis den forkerte datatypeværdi leveres, får vi en type mismatchfejl.
  • Da dato og klokkeslæt er en del af serienummeret, konverterer det tid såvel som korrekt tid.

Interessante artikler...