VBA DatePart -funktion

DatePart Beskrivning

Returnerar en viss del av ett visst datum.

Enkla DatePart -exempel

Här är ett enkelt exempel på DatePart:

123 Sub DatePart_Year_Test ()MsgBox DatePart ("åååå", #1/1/2019 #)Avsluta Sub

Denna kod kommer att returnera 2022.

DatePart Syntax

I VBA Editor kan du skriva “DatePart (” för att se syntaxen för DatePart -funktionen:

DatePart -funktionen innehåller fyra argument:

Intervall: Tidenhet (dagar, månader, år, etc.). Ange som sträng. (ex. ”m” för månad)

Miljö Beskrivning
åååå År
q Fjärdedel
m Månad
y Årets dag
d Dag
w Veckodag
ww Vecka
h Timme
n Minut
s Andra

Datum: Variant (datum) värde som du vill utvärdera.

FirstDayOfWeek: En konstant som anger den första dagen i veckan. Detta är valfritt. Om det inte anges antas söndag.

Konstant Värde Beskrivning
vbUseSystem 0 Använd inställningen för NLS API.
vbSöndag 1 Söndag (standard)
vbMåndag 2 Måndag
vbTisdag 3 Tisdag
vb onsdag 4 Onsdag
vbTorsdag 5 Torsdag
vbFredag 6 fredag
vbLördag 7 Lördag

FirstWeekOfYear: En konstant som anger årets första vecka. Detta är valfritt. Om den inte anges antas den första veckan vara den vecka då den 1 januari inträffar.

Konstant Värde Beskrivning
vbUseSystem 0 Använd inställningen för NLS API.
vbFirstJan1 1 Börja med veckan där den 1 januari inträffar (standard).
vbFirstFourDays 2 Börja med den första veckan som har minst fyra dagar under det nya året.
vbFirstFullWeek 3 Börja med årets första hela vecka.

VBA -programmering | Kodgenerator fungerar för dig!

Exempel på Excel VBA DatePart -funktion

Referensdatum

Till att börja med kommer vi att visa olika sätt att referera till datum med hjälp av VBA DatePart -funktionen.

Var och en av dessa DatePart -funktioner ger samma resultat:

123456789 Sub DateAdd_ReferenceDates ()MsgBox DatePart ("åååå", #4/1/2019 #)MsgBox DatePart ("åååå", DateSerial (2019, 4, 1))MsgBox DatePart ("åååå", DateValue ("1 april 2022"))Avsluta Sub

Eller så kan du referera till en cell som innehåller ett datum:

12345 Sub DatePart_ReferenceDate_Cell ()MsgBox DatePart ("åååå", intervall ("C2"). Värde)Avsluta Sub

Eller skapa och referera datumvariabler:

12345678 Sub DatePart_Variable ()Dim dt As Datedt = #4/1/2019 #MsgBox DateAdd ("åååå", dt)Avsluta Sub

Använda olika intervallenheter

Fjärdedel

123 Sub DatePart_Quarter ()MsgBox DatePart ("q", #6/30/2019 #)Avsluta Sub

Månad

12345 Sub DatePart_Month ()MsgBox DatePart ("m", #6/30/2019 #)' likvärdigMsgBox -månad (#6/30/2019#)Avsluta Sub

Dag

12345 Sub DatePart_Day ()MsgBox DatePart ("d", #6/30/2019 #)' likvärdigMsgBox Day (#6/30/2019#)Avsluta Sub

Vecka

12345 Sub DatePart_Week_Test ()MsgBox DatePart ("w", #6/30/2019 #)' likvärdigMsgBox Weekday (#6/30/2019#)Avsluta Sub

Timme

123456789101112 Sub DatePart_Hour ()Dim dt As DateDim nHour As Longdt = #8/14/2019 9:30:00 AM #nHour = DatePart ("h", dt)MsgBox nHour' likvärdigMsgBox Hour (dt)Avsluta Sub

Minuter

123456 Sub DatePart_Minute ()MsgBox DatePart ("n", #8/14/2019 09:15:00 #)' likvärdigMsgBox Minute (#8/14/2019 09:15:00#)MsgBox Minute (#9: 15: 00 AM#)Avsluta Sub

Andra

123456 Sub DatePart_Second ()MsgBox DatePart ("s", #8/14/2019 09:15:15 #)' likvärdigMsgBox Second (#8/14/2019 9:15:15 AM#)MsgBox Second (#9: 15: 15 AM#)Avsluta Sub
wave wave wave wave wave