Restituisce un valore Variant (Date) contenente una data a cui è stato aggiunto un intervallo di tempo specificato.
Sintassi
DateAdd (intervallo, numero, data)
Gli argomenti della sintassi della funzione DateAdd sono i seguenti:
Argomento |
Descrizione |
intervallo |
Obbligatorio. Espressione stringa che rappresenta l'intervallo di tempo da aggiungere. |
num |
Obbligatorio. Espressione numerica che rappresenta il numero di intervalli da aggiungere. Può essere positivo( per ottenere date future) o negativo (per ottenere le date passate). |
date |
Obbligatorio. Valore Variant (Date) o valore letterale che rappresenta la data a cui viene aggiunto l'intervallo. |
Suggerimento: In Access 2010, il Generatore di espressioni usa la tecnologia IntelliSense, che consente di identificare gli argomenti obbligatori nell'espressione.
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 |
Osservazioni
È possibile usare la funzione DateAdd per aggiungere o sottrarre un intervallo di tempo specificato da una data. Ad esempio, è possibile usare DateAdd per calcolare una data di 30 giorni dalla data odierna o un'ora a 45 minuti da adesso.
Per aggiungere giorni alla data,è possibile usare Day of Year ("y"), Day ("d") o Weekday ("w").
La funzione DateAdd non restituisce una data non valida. L'esempio seguente aggiunge un mese al 31 gennaio:
DateAdd("m", 1, "31-Jan-95")
In questo caso, DateAdd restituisce 28-feb-95, non 31-feb-95. Se data è 31-gen-96, restituirà 29-feb-96 perché il 1996 è un anno bisestile.
Se la data calcolata precede l'anno 100, ovvero se si sottrae più anni rispetto alla data, si verifica un errore.
Se num non è un valore Long, viene arrotondato al numero intero più vicino prima di essere valutato.
Nota: Il formato del valore restituito per DateAdd è determinato dalle impostazioni del Pannello di controllo, non dal formato passato nell'argomento data.
Nota: Per la data,se la proprietà Calendario è impostata su Gregoriano, la data specificata deve essere gregoriano. Se il calendario è Hijri, la data specificata deve essere basata sul calendario Hijri. Se i valori dei mesi sono nomi, il nome deve essere coerente con l'impostazione della proprietà Calendario corrente. Per ridurre al minimo la possibilità che i nomi dei mesi entrino in conflitto con l'impostazione della proprietà Calendario corrente, immettere valori numerici per i mesi (formato Data breve).
Esempi di query
Espressione |
Risultati |
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; |
Restituisce i risultati aggiungendo 1 anno ai valori di data del campo "DateofSale". |
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; |
Restituisce i risultati sottraendo 1 anno dai valori di data del campo "DateofSale". |
SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales; |
Restituisce i risultati nella colonna "NewDate" aggiungendo 10 giorni ai valori di data del campo "DateofSale". |
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; |
Restituisce i risultati nella colonna "NewDate" sottraendo 1 settimana (7 giorni) dai valori di data del campo "DateofSale". |
Esempio di 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 accetta una data come input e usa la funzione DateAdd per visualizzare una data corrispondente per un numero specificato di mesi futuri.
Dim FirstDate As Date ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m" ' "m" specifies months as interval.
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & _
DateAdd(IntervalType, Number, FirstDate)
MsgBox Msg