VBA DateValue | Sådan bruges DateValue-funktionen i Excel VBA?

Hvad er VBA DateValue-funktion?

En DateValue-funktion er en indbygget funktion i Excel VBA under kategorien Date / time-funktion. Det fungerer som både VBA-funktion og regnearkfunktion i vba. Denne funktion returnerer serienummeret eller værdien for datoen, der er angivet i strengrepræsentationsformatet, og ignorerer oplysningerne om tid leveret af datostrengen. Det bruges på to forskellige måder i Excel. Denne funktion bruges som en regnearksformel, der indtastes i en regnearkcelle. Det bruges som makrokoden i VBA-applikationen, der indtaster den via Visual Basic Editor tilknyttet Microsoft Excel.

I denne artikel vil vi lære eksempler på VBA DATEVALUE, og hvordan man bruger det med en klar forklaring.

Forklaring af VBA Datevalue-funktion

I VBA bruger DATEVALUE følgende syntaks.

Denne funktion bruger kun det enkelte argument eller parameter

  • Dato : Det er den dato, der er repræsenteret i strengformatet
  • Returnerer: Denne funktion returnerer datoen, når den bruges som en VBA-funktion. Den returnerer datoværdien, når den bruges som en regnearksfunktion

VBA DateValue-funktionen er i stand til at fortolke data repræsenteret i tekstformat, der er nævnt i et gyldigt Excel-format. Det er ikke i stand til at returnere datoværdien, hvis strengen indeholdt tekstrepræsentation af hverdag.

Fordelene ved VBA DateValue-funktionen er at udtrække datoværdi fra streng og konvertere dato med tid til den eneste dato. Vi kan simpelthen, at når en dato er givet med tid, denne funktion kun dato værdi undgå tidsværdien.

Sådan bruges Excel VBA DATEVALUE?

For at bruge DateValue-funktionen i Excel skal du først åbne VBA-editoren.

Kommandoknappen skal placeres i Excel-regnearket for at tilføje linjerne i VBA-programmet til det. For at implementere programmets linjer kræver brugeren at klikke på kommandoknappen i Excel-ark. For at have et gyldigt output fra programmet gives gyldigt input gennem argumentet. For eksempel hjælper følgende kode med oprettelsen af ​​en makro til at køre DateValue-funktionen for at udtrække datoværdien fra teksten i VBA.

VBA-program: 

 Underdataknap () Dim myDate As Date myDate = DateValue (“15. August 1991”) MsgBox Date (myDate) End Sub 

Denne kode resulterer i datoen som 15 fra det givne input.

Eksempler på Excel VBA DATEVALUE

Nedenfor er eksemplerne på DateValue i Excel VBA.

Du kan downloade denne VBA DateValue Excel-skabelon her - VBA DateValue Excel-skabelon

Eksempel # 1 - Få dag, måned og år fra en dato

Få trin følges for at oprette og udføre programmet i VBA. Disse inkluderer

Trin 1: Gå til fanen Udvikler, placer markøren på en celle i Excel-arket, og klik på 'Indsæt' og vælg 'Kommando-knap' under ActiveX-kontrol som vist i figuren.

Træk knappen, hvor du vil, og angiv billedteksten som dataknap fra egenskabsvinduet.

Trin 2: Dobbeltklik på knappen, den omdirigerer til VBA-projekt og skriver koden mellem kommandoknappen Private Sub og slutunderen.

Koden skal udvikles som nedenfor for at få en dato, måned og år.

Kode:

 Privat underdataknap1_Click () Dim eksamplet dato som eksamensdato = DateValue ("April 19,2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Month (Exampledate) End Sub 

I denne kode er Datebutton1_Click () navnet, og eksampletat er variabelt med datatype og Msgbox for at vise output.

Trin 3: Mens der udvikles kode, vil der opstå vba-typefejlfejl og skal tage sig af dem.

Trin 4: I dette trin skal du køre programmet ved at klikke på kørselsindstillingen.

Eller vi kan kontrollere eller fejle programmet trin for trin ved at vælge trin ind i menuen Debug. Hvis vores kode er uden fejl, viser den output.

Trin 5 : Når programmet udføres, viser det først meddelelsesfeltet med den dato, der er angivet i tekstinput. Klik derefter på OK for at se årværdien igen, klik OK i meddelelsesfeltet for at se månedsværdien.

Bemærk: Disse trin skal følges tydeligt for at få nøjagtige resultater.

Eksempel 2 - Brug af DatePart til at hente de forskellige dele af datoen

Trin 1: Gå til fanen Excel-udvikler, placer markøren på en celle i Excel-arket, og klik på 'Indsæt' og vælg 'Kommando-knap' under ActiveX-kontrol som vist i figuren.

Trin 2: Træk på knappen og angiv billedteksten som DatePart under egenskaber.

Dobbeltklik på denne knap, den dirigerer til Visual Basic Editor-arket og vises som følger.

Trin 3: Udvikl koden ved hjælp af DatePart med DateValue som vist i figuren.

Kode:

 Privat sub Datepart1_Click () Dim partdate As Variant partdate = DateValue ("8/15/1991") MsgBox partdate MsgBox Datepart ("yyyy", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate MsgBox Datepart ("q", partdate) Afslut Sub 

I dette program er DatePart1 makronavnet, og partDate er argumentnavn med datatypen 'variant'. For visning af år, dato, måned og et kvartal anvendes formatet som "åååå", "d", "m" og "q". Hvis vi laver en fejl i formatet, vises den følgende fejl.

Trin 4: Efter vellykket fejlretning af programmet skal du køre programmet ved at klikke på køreknappen og bruge excel genvejstast F5.

Koden viser først den fulde dato, hvorefter den efter klik på hver OK fra meddelelsesboksen viser årværdien efter henholdsvis datoværdien, månedsværdien og kvartalsværdien.

Ting at huske om VBA DATEVALUE

Følgende ting skal huskes, når du bruger DateValue-funktionen i Excel VBA

  • Kørselstidsfejl 13 med meddelelse Type Mismatch vises, når datoen, der er angivet til DateValue-funktionen, ikke er i stand til at konvertere til en gyldig dato. Vi har brug for dato er korrekt tekstformat
  • Når vi forsøger at få den eneste dato fra strengargumentet med koden 'msgbox date (argument name)', viser den typefejlfejlen.
  • Vi kan se output fra DateValue-funktionen uden at åbne VBA-editoren. Det gøres ved at klikke på kommandoknappen og vælge den makro, der er oprettet til det respektive program
  • Når DatePart bruges til at hente værdierne, skal det relevante format følges. Ellers fører det 'run time error 5' med besked ugyldig procedureopkald eller argument.