Funzione DateDiff

Restituisce un valore Variant (Long) che specifica il numero di intervalli di tempo tra due date specificate.

Vedere alcuni esempi

Sintassi

DateDiff ( intervallo, data1, data2 [, primogiornosett] [, primasettanno] )

La sintassi della funzione DateDiff ha gli argomenti seguenti:

Suggerimento : In Access 2010, il Generatore di espressioni usa la tecnologia IntelliSense, che consente di identificare gli argomenti obbligatori nell'espressione. 

Argomento

Descrizione

intervallo

Obbligatorio. Espressione stringa che rappresenta l'intervallo di tempo usato per calcolare la differenza tra data1 e data2.

data1, data2

Obbligatori. Variant (Date). Due date da usare nel calcolo.

primogiornosett

Facoltativo. Una costante che specifica il primo giorno della settimana. Se non è specificato, viene usato il valore Sunday.

primasettanno

Facoltativo. Costante che specifica la prima settimana dell'anno. Se non è specificato, verrà considerata come prima settimana quella in cui cade l'1 gennaio.


Impostazioni

L'argomentointervallo ha queste impostazioni:

Impostazione

Descrizione

yyyy

Anno

q

Trimestre

m

Mese

y

Giorno dell'anno

d

Giorno

w

Giorno della settimana

ww

Settimana

h

Ora

n

Minuto

s

Secondo


Inizio pagina

L'argomento primogiornosett ha queste impostazioni:

Costante

Valore

Descrizione

vbUseSystem

0

Viene usata l'impostazione di NLS API.

vbSunday

1

Domenica (impostazione predefinita)

vbMonday

2

Lunedì

vbTuesday

3

Martedì

vbWednesday

4

Mercoledì

vbThursday

5

Giovedì

vbFriday

6

Venerdì

vbSaturday

7

Sabato


Costante

Valore

Descrizione

vbUseSystem

0

Viene usata l'impostazione di NLS API.

vbFirstJan1

1

La prima settimana è quella in cui cade l'1 gennaio (impostazione predefinita).

vbFirstFourDays

2

La prima settimana corrisponde alla prima che contiene almeno quattro giorni nel nuovo anno.

vbFirstFullWeek

3

La prima settimana corrisponde alla prima settimana completa dell'anno.


Osservazioni

È possibile usare la funzione DateDiff per determinare quanti intervalli di tempo specificati sono presenti tra due date. Ad esempio, è possibile usare DateDiff per calcolare il numero di giorni tra due date oppure il numero di settimane tra il giorno corrente e la fine dell'anno.

Per calcolare il numero di giorni tra data1 e data2, è possibile usare il valore del giorno dell'anno ("y") o del giorno ("d"). Quando intervallo è impostato su "w" (giorno della settimana), DateDiff restituisce il numero di settimane tra le due date. Se data1 corrisponde a un lunedì, DateDiff conta il numero di lunedì fino a data2. La funzione calcola data2, ma non data1. Quando intervallo è impostato su "ww" (settimana), tuttavia, la funzione DateDiff restituisce il numero di settimane del calendario tra le due date. La funzione conta il numero di domeniche tra data1 e data2. DateDiff calcola data2 se corrisponde a una domenica, ma non calcola data1, neanche se corrisponde a una domenica.

Se data1 fa riferimento a una data successiva rispetto a data2, la funzione DateDiff restituisce un numero negativo.

L'argomento primogiornosett influisce sui calcoli che usano i simboli di intervallo "w" e "ww".

Se data1 o data2 è un'valore letterale data, l'anno specificato diventa una parte permanente della data. Tuttavia, se data1 o data2 è racchiuso tra virgolette doppie (" ") e si omette l'anno, l'anno corrente viene inserito nel codice ogni volta che viene valutata l'espressione data1 o data2. Questo permette di scrivere codice da usare per anni diversi.

Nel confrontare il 31 dicembre con l'1 gennaio dell'anno immediatamente successivo, DateDiff per "yyyy" (anno) restituisce 1, anche se è passato un solo giorno.

Nota :  Se per data1 e data2, l'impostazione della proprietà Calendario è Gregoriano, la data specificata deve essere basata sul calendario gregoriano. Se il calendario è Hijri, la data specificata deve essere basata sul calendario Hijri.

Inizio pagina

Esempi

Usare la funzione DateDiff in un'espressione     È possibile usare la funzione DateDiff ovunque sia possibile usare espressioni. Si supponga, ad esempio, di usare una maschera per completare gli ordini dei clienti. Nella tabella Ordini è presente un campo chiamato RicezionePrimaDi che contiene la data entro la quale il cliente deve ricevere l'ordine. È possibile usare la funzione DateDiff con una casella di testo nella maschera per visualizzare il numero di giorni rimanenti entro cui è necessario spedire l'ordine.

Presupponendo che siano necessari dieci giorni per spedire qualsiasi ordine, impostare la proprietà .OrigineControllo della casella di testo in questo modo:

=DateDiff("d", Now(), [Ordini].[RicezionePrimaDi])-10

Quando si apre la maschera in visualizzazione Maschera, la casella di testo visualizza il numero di giorni rimanenti entro cui è necessario spedire l'ordine. Se restano meno di 10 giorni entro cui il cliente deve ricevere l'ordine, il numero nella casella di testo è negativo e indica il numero di giorni di ritardo dell'ordine se questo viene spedito immediatamente.

Usare la funzione DateDiff nel codice VBA    

Nota : Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.

Questo esempio usa la funzione DateDiff per visualizzare il numero di giorni tra una data specifica e la data corrente.

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg
Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa al programma Office Insider

Queste informazioni sono risultate utili?

Grazie per i tuoi commenti e suggerimenti

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×