DatumOnderdeelbeschrijving
Retourneert een gespecificeerd deel van een bepaalde datum.
Voorbeelden van eenvoudige datumonderdelen
Hier is een eenvoudig DatePart-voorbeeld:
123 | SubdatumPart_Year_Test()MsgBox DatePart("yyyy", #1/1/2019#)Einde sub |
Deze code keert terug in 2022.
DatePart-syntaxis
In de VBA-editor kunt u "DatePart(" typen om de syntaxis voor de DatePart-functie te zien:
De functie DatePart bevat 4 argumenten:
Interval: Tijdseenheid (dagen, maanden, jaren, enz.). Voer in als tekenreeks. (bijv. "m" voor maand)
Instelling | Beschrijving |
---|---|
yyyy | Jaar |
Q | Kwartaal |
m | Maand |
ja | dag van het jaar |
NS | Dag |
met wie | Weekdag |
ww | Week |
H | Uur |
N | Minuut |
s | Tweede |
Datum: Variant (Datum) waarde die u wilt evalueren.
Eerste dag van de week: Een constante die de eerste dag van de week aangeeft. Dit is optioneel. Indien niet gespecificeerd, wordt uitgegaan van zondag.
Constante | Waarde | Beschrijving |
---|---|---|
vbGebruikSysteem | 0 | Gebruik de NLS API-instelling. |
vbzondag | 1 | Zondag (standaard) |
vbMaandag | 2 | maandag |
vbDinsdag | 3 | Dinsdag |
vbwoensdag | 4 | woensdag |
vbdonderdag | 5 | donderdag |
vbvrijdag | 6 | vrijdag |
vbZaterdag | 7 | zaterdag |
EersteWeekVanJaar: Een constante die de eerste week van het jaar aangeeft. Dit is optioneel. Indien niet gespecificeerd, wordt aangenomen dat de eerste week de week is waarin 1 januari valt.
Constante | Waarde | Beschrijving |
---|---|---|
vbGebruikSysteem | 0 | Gebruik de NLS API-instelling. |
vbFirstJan1 | 1 | Begin met de week waarin 1 januari valt (standaard). |
vbEersteVierDagen | 2 | Begin met de eerste week die in het nieuwe jaar minimaal vier dagen heeft. |
vbEersteVolledigeWeek | 3 | Begin met de eerste volledige week van het jaar. |
VBA-programmering | Code Generator werkt voor u!
Voorbeelden van Excel VBA DatePart-functie
Verwijzende datums
Om te beginnen zullen we verschillende manieren demonstreren om naar datums te verwijzen met behulp van de VBA DatePart-functie.
Elk van deze DatePart-functies levert hetzelfde resultaat op:
123456789 | Sub DateAdd_ReferenceDates()MsgBox DatePart("yyyy", #4/1/2019#)MsgBox DatePart("yyyy", DateSerial(2019, 4, 1))MsgBox DatePart("yyyy", DateValue("1 april 2022"))Einde sub |
Of u kunt verwijzen naar een cel met een datum:
12345 | SubdatumPart_ReferenceDate_Cell()MsgBox DatePart ("yyyy", Range ("C2"). Waarde)Einde sub |
Of maak en referentiedatumvariabelen:
12345678 | SubdatumPart_Variable()Dim dt als datumdt = #4/1/2019#MsgBox DateAdd("yyyy", dt)Einde sub |
Verschillende intervaleenheden gebruiken
Kwartaal
123 | SubdatumPart_Quarter()MsgBox DatePart("q", #6/30/2019#)Einde sub |
Maand
12345 | SubdatumPart_Month()MsgBox DatePart("m", #6/30/2019#)' equivalentMsgBox-maand (#30/06/2019#)Einde sub |
Dag
12345 | SubdatumPart_Day()MsgBox DatePart("d", #6/30/2019#)' equivalentMsgBox-dag (#30-6/2019#)Einde sub |
Week
12345 | SubdatumPart_Week_Test()MsgBox DatePart("w", #6/30/2019#)' equivalentMsgBox Weekdag(#30/06/2019#)Einde sub |
Uur
123456789101112 | SubdatumPart_Hour()Dim dt als datumDim nHour As Longdt = #8/14/2019 9:30:00 AM#nHour = DatePart("h", dt)MsgBox nHour' equivalentMsgBox Uur (dt)Einde sub |
Minuten
123456 | SubdatumPart_Minute()MsgBox DatePart("n", #8/14/2019 9:15:00 AM#)' equivalentMsgBox Minuut(#14-8-2019 9:15:00 AM#)MsgBox Minuut(#9:15:00 AM#)Einde sub |
Tweede
123456 | SubdatumPart_Second()MsgBox DatePart("s", #8/14/2019 9:15:15 AM#)' equivalentMsgBox Tweede (#14-8-2019 9:15:15 AM#)MsgBox Tweede (#9:15:15 AM#)Einde sub |