Returnerar ett värde av datatypen Variant (Datum) som innehåller ett datum med ett visst tidsintervall tillagt.
Syntax
DateAdd(interval, number, date)
Funktionen DateAdd har följande argument:
| argument | Beskrivning |
|---|---|
interval |
Obligatoriskt. Stränguttryck som är det tidsintervall som du vill lägga till. |
number |
Obligatoriskt. Numeriskt uttryck som är det antal intervall som du vill lägga till. Det kan vara positivt att få datum i framtiden eller negativa för att få datum i det förflutna. |
date |
Obligatoriskt. Variant (Datum) eller literal som representerar datumet som intervallet läggs till i. |
Inställningar
Argumentet interval har följande inställningar:
| Inställning | Beskrivning |
|---|---|
yyyy |
År |
q |
Kvartal |
m |
Månad |
y |
Dag på året |
d |
Dag |
w |
Veckodag |
ww |
Vecka |
h |
Timme |
n |
Minut |
s |
Sekund |
Kommentarer
Du kan använda DateAdd funktionen för att adderas eller subtrahera ett angivet tidsintervall från ett datum. Du kan till exempel använda DateAdd för att beräkna ett datum 30 dagar från i dag eller en tid om 45 minuter.
Om du vill lägga till datedagar i kan du använda Dag på året ("y"), Dag ("d") eller Veckodag ("w").
Funktionen DateAdd returnerar inte ett ogiltigt datum. I följande exempel läggs en månad till den 31 januari:
DateAdd("m", 1, "31-Jan-95")
I det här fallet DateAdd returneras 28 februari-95, inte 31 februari-95. Om date är 31-jan-96 returneras 29 februari 1996 eftersom 1996 är ett skottår.
Om det beräknade datumet föregår år 100, vilket innebär att du subtraherar fler år än i date, uppstår ett fel.
Om number det inte är ett Long-värde avrundas det till närmaste heltal innan uttrycket utvärderas.
Obs
Formatet för returvärdet för DateAdd bestäms av Kontrollpanelen inställningar, inte av formatet som överförs i date argumentet.
Obs
För dateom egenskapsinställningen Calendar är gregoriansk måste det angivna datumet vara gregorianskt. Om kalendern är Hijri måste det datum som anges vara Hijri. Om månadsvärden är namn måste namnet matcha den aktuella Calendar egenskapsinställningen. Om du vill minska risken för konflikter anger du numeriska månadsvärden i kort datumformat.
Frågeexempel
| Uttryck | Resultat |
|---|---|
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; |
Adderar 1 år till datumvärdena i fältet DateofSale . |
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; |
Subtraherar 1 år från datumvärdena DateofSale i fältet. |
SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales; |
Adderar 10 dagar till datumvärdena i DateofSale fältet och returnerar resultatet i NewDate kolumnen. |
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; |
Subtraherar 1 vecka, eller 7 dagar, från datumvärdena i DateofSale fältet och returnerar resultatet i NewDate kolumnen. |
VBA-exempel
Obs
I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Mer information om hur du arbetar med VBA finns i Access VBA-referens.
Det här exemplet tar ett datum som indata och använder DateAdd funktionen för att visa matchningsdatumet ett angivet antal månader i framtiden.
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