Funzione VBA DatePart

DataDescrizione della parte

Restituisce una parte specificata di una determinata data.

Esempi semplici di DatePart

Ecco un semplice esempio di DatePart:

123 Sub DatePart_Year_Test()MsgBox DatePart("yyyy", #1/1/2019#)Fine sottotitolo

Questo codice tornerà nel 2022.

Sintassi DatePart

Nell'editor VBA, puoi digitare "DatePart(" per vedere la sintassi per la funzione DatePart:

La funzione DatePart contiene 4 argomenti:

Intervallo: Unità di tempo (giorni, mesi, anni, ecc.). Inserisci come stringa. (es. “m” per Mese)

Collocamento Descrizione
aaaa Anno
Q Trimestre
m Mese
giorno dell'anno
D Giorno
w giorno della settimana
ww Settimana
h Ora
n Minuto
S Secondo

Data: Valore della variante (data) che si desidera valutare.

Primo giorno della settimana: Una costante che specifica il primo giorno della settimana. Questo è facoltativo. Se non specificato, si presume la domenica.

Costante Valore Descrizione
vbUseSystem 0 Utilizza l'impostazione dell'API NLS.
vbdomenica 1 domenica (predefinito)
vblunedì 2 lunedì
vbmartedì 3 Martedì
vbmercoledì 4 mercoledì
vbgiovedì 5 giovedi
vbvenerdì 6 venerdì
vbsabato 7 il sabato

Prima settimana dell'anno: Una costante che specifica la prima settimana dell'anno. Questo è facoltativo. Se non specificato, si presume che la prima settimana sia la settimana in cui si verifica il 1 gennaio.

Costante Valore Descrizione
vbUseSystem 0 Utilizza l'impostazione dell'API NLS.
vbFirstJan1 1 Inizia con la settimana in cui cade il 1 gennaio (impostazione predefinita).
vbFirstFourDays 2 Inizia con la prima settimana che ha almeno quattro giorni nel nuovo anno.
vbFirstFullWeek 3 Inizia con la prima settimana completa dell'anno.

Programmazione VBA | Il generatore di codice funziona per te!

Esempi di funzione DatePart VBA di Excel

Date di riferimento

Per iniziare, dimostreremo diversi modi per fare riferimento alle date utilizzando la funzione VBA DatePart.

Ognuna di queste funzioni DatePart produce lo stesso risultato:

123456789 Sub DateAdd_ReferenceDate()MsgBox DatePart("yyyy", #4/1/2019#)MsgBox DatePart("yyyy", DateSerial(2019, 4, 1))MsgBox DatePart("yyyy", DateValue("1 aprile 2022"))Fine sottotitolo

Oppure puoi fare riferimento a una cella contenente una data:

12345 Sub DatePart_ReferenceDate_Cell()MsgBox DatePart("yyyy", Range("C2").Value)Fine sottotitolo

Oppure crea e fai riferimento a variabili di data:

12345678 Sub DataPart_Variable()Dim dt come datadt = #4/1/2019#MsgBox DateAdd("aaaa", dt)Fine sottotitolo

Utilizzo di diverse unità di intervallo

Trimestre

123 Sub DataPart_Trimestre()MsgBox DatePart("q", #6/30/2019#)Fine sottotitolo

Mese

12345 Sub DataPart_Mese()MsgBox DatePart("m", #6/30/2019#)' equivalenteMsgBox Mese (#30/06/2019#)Fine sottotitolo

Giorno

12345 Sub DataPart_Day()MsgBox DatePart("d", #6/30/2019#)' equivalenteMsgBox Day(#30/06/2019#)Fine sottotitolo

Settimana

12345 Sub DatePart_Week_Test()MsgBox DatePart("w", #6/30/2019#)' equivalenteMsgBox Giorno della settimana(#30/06/2019#)Fine sottotitolo

Ora

123456789101112 Sub DataPart_Hour()Dim dt come dataDim nHour As Longdt = #8/14/2019 9:30:00 AM#nHour = DatePart("h", dt)MsgBox nHour' equivalenteMsgBox Hour(dt)Fine sottotitolo

Minuti

123456 Sub DatePart_Minute()MsgBox DatePart("n", #8/14/2019 9:15:00 AM#)' equivalenteMinuto MsgBox(#8/14/2019 9:15:00 AM#)Minuto MsgBox(#9:15:00 AM#)Fine sottotitolo

Secondo

123456 Sub DataPart_Second()MsgBox DatePart("s", #8/14/2019 9:15:15 AM#)' equivalenteMsgBox Secondo(#8/14/2019 9:15:15 AM#)MsgBox Secondo(#9:15:15 AM#)Fine sottotitolo
wave wave wave wave wave