VBA - Funzione DateDiff
Una funzione, che restituisce la differenza tra due intervalli di tempo specificati.
Sintassi
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
Descrizione dei parametri
Interval- Un parametro obbligatorio. Può assumere i seguenti valori.
d - giorno dell'anno
m - mese dell'anno
y - anno dell'anno
yyyy - anno
w - giorno della settimana
ww - settimana
q - quarto
h - ora
m - minuto
s - secondo
Date1 e Date2 - Parametri obbligatori.
Firstdayofweek- Un parametro opzionale. Specifica il primo giorno della settimana. Può assumere i seguenti valori.
0 = vbUseSystemDayOfWeek - Utilizza l'impostazione API National Language Support (NLS)
1 = vb domenica - domenica
2 = vbMonday - Monday
3 = vb Martedì - Martedì
4 = vb Mercoledì - Mercoledì
5 = vb giovedì - giovedì
6 = vbFriday - Friday
7 = vbSaturday - Saturday
Firstdayofyear- Un parametro opzionale. Specifica il primo giorno dell'anno. Può assumere i seguenti valori.
0 = vbUseSystem - Utilizza l'impostazione API National Language Support (NLS)
1 = vbFirstJan1 - Inizia con la settimana in cui si verifica il 1 gennaio (impostazione predefinita)
2 = vbFirstFourDays - Inizia con la settimana che ha almeno quattro giorni nel nuovo anno
3 = vbFirstFullWeek - Inizia con la prima settimana completa del nuovo anno
Esempio
Aggiungi un pulsante e aggiungi la seguente funzione.
Private Sub Constant_demo_Click()
Dim fromDate as Variant
fromDate = "01-Jan-09 00:00:00"
Dim toDate as Variant
toDate = "01-Jan-10 23:59:00"
msgbox("Line 1 : " &DateDiff("yyyy",fromDate,toDate))
msgbox("Line 2 : " &DateDiff("q",fromDate,toDate))
msgbox("Line 3 : " &DateDiff("m",fromDate,toDate))
msgbox("Line 4 : " &DateDiff("y",fromDate,toDate))
msgbox("Line 5 : " &DateDiff("d",fromDate,toDate))
msgbox("Line 6 : " &DateDiff("w",fromDate,toDate))
msgbox("Line 7 : " &DateDiff("ww",fromDate,toDate))
msgbox("Line 8 : " &DateDiff("h",fromDate,toDate))
msgbox("Line 9 : " &DateDiff("n",fromDate,toDate))
msgbox("Line 10 : "&DateDiff("s",fromDate,toDate))
End Sub
Quando si esegue la funzione di cui sopra, produce il seguente output.
Line 1 : 1
Line 2 : 4
Line 3 : 12
Line 4 : 365
Line 5 : 365
Line 6 : 52
Line 7 : 52
Line 8 : 8783
Line 9 : 527039
Line 10 : 31622340