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 |
sì | 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 |