VBA CDATE - Hur använder jag CDATE i Excel VBA? (med exempel)

Innehållsförteckning

CDATE-funktion i VBA

VBA CDATE är en datatypskonverteringsfunktion som konverterar en datatyp som antingen är text eller sträng till en datumdatatyp. När värdet omvandlas till datumdatatyp kan vi leka med datum grejer.

Syntax för CDATE

Nedan är syntaxen för CDATE-funktionen i VBA.

Uttryck: Uttryck kan vara ett sträng- eller textvärde eller en variabel som innehåller ett värde som ska konverteras till datumdatatypen.

CDATE identifierar datum- och tidsformat på den dator som vi arbetar med och konverterar det angivna värdet till samma datatyp. Om du bara anger dag och månad och ignorerar år tar CDATE-funktionen systemåret, visas tillsammans med levererad dag och månad.

Vi kommer att se fler och fler exempel i avsnittet nedan.

Hur använder jag CDATE-funktionen i Excel VBA?

Exempel på CDATE-funktion i Excel VBA.

Exempel 1

Innan jag visar exemplet på CDATE, titta först på nedanstående kod.

Koda:

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

I ovanstående för variabeln "k" har jag tilldelat värdet "25-12". När jag kör den här koden ser vi samma värde i meddelandefältet i VBA.

Men detta kan konverteras till datum med hjälp av VBA CDATE-funktionen, för detta definierar du ytterligare en variabel som Datum.

Koda:

Dim k1 som datum

För denna variabel tilldelar "k1" CDATE-funktionen och levererar variabeln "k", som innehåller strängen "25-12". Och för meddelandefältet visar variabelvärdet "k1" istället för "k."

Koda:

k1 = CDate (k)

Kör nu koden och se resultatet i en meddelandefält.

Så resultatet är “12/25/2019”.

Titta noga på det värde som vi har levererat. Vi har levererat "25-12" vi har inte levererat år.

När jag skrev den här artikeln var nuvarande år i mitt system 2019, så VBA CDATE konverterade strängvärdet "25-12" hittills och lade till systemåret 2019 till det. Så slutresultatet läsas som här 2019/12/25 dvs 25 : e December 2019.

Exempel 2

Titta nu på koden nedan.

Koda:

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

I ovanstående kod för variabeln "k" har jag använt numret "43889". Vi vet alla att det här är ett serienummer, men för en annan variabel, "KResult", har vi konverterat detta värde hittills med funktionen "CDATE".

Samma resultat av variabeln “KResult” visas i meddelandefältet.

Kör koden och se magin i funktionen "CDATE."

Det visar resultatet som “28/28/2020” om du inte känner till datum i excel, då måste du undra hur detta hände.

Ange till exempel samma nummer (43889) i en av cellerna i kalkylbladet.

För detta, använd formatet som “DD-MM-ÅÅÅÅ.”

Klicka nu på Ok och se resultatet.

Nu har resultatet ändrats från ett serienummer till dags dato. Eftersom vi har tillämpat datumformat över serienumret har det visat respektive datum.

Så det betyder att serienumret 43889 är lika med datumet 28-02-2020.

Så i vår VBA-kod har CDATE-funktionen kört samma sak genom att konvertera strängvärdet till en datumdatatyp.

Exempel # 3

För det här exemplet, se nedanstående kod.

Under CDATE_Exempel3 () Dimvärde1 Dimvärde2 Dimvärde3 Värde1 = "24 december 2019" Värde2 = # 6/25/2018 # Värde3 = "18:30:48 PM" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Värde3) Slut Sub

När vi kör den här koden får vi nedanstående resultat.

Så, alla värden konverteras till datumdatatypen med CDATE-funktionen.

Saker att komma ihåg

  • CDATE konverterar endast siffror och strängvärden till datumdatatypen.
  • Detta är användbart när vi använder det med andra funktioner.
  • Om fel datatypsvärde tillhandahålls får vi ett typavvikelser.
  • Eftersom datum och tid är en del av serienumret konverterar det både tid och rätt tid.

Intressanta artiklar...