Funktionen DateDiff

Returnerer en Variant (langt heltal), der angiver antallet af tidsintervaller mellem to angivne datoer.

Syntaks

DateDiff ( interval, dato1, dato2 [, førsteugedag] [, førsteuge] )

Syntaksen for funktionen DateDiff har disse argumenter:

Tip!: I Access 2010 indeholder Udtryksgeneratoren IntelliSense, så du kan se, hvilke argumenter dit udtryk kræver. 

Argument

Beskrivelse

interval

Obligatorisk. Strengudtryk, der er det tidsinterval, du bruger til at beregne forskellen mellem dato1 og dato2.

dato1, dato2

Påkrævet. Variant (dato). To datoer, som du vil bruge i beregningen.

førsteugedag

Valgfrit. En konstant, der angiver den første dag i ugen. Hvis andet ikke er angivet, antages dette at være søndag.

førsteuge

Valgfrit. En konstant, der angiver den første uge i året. Hvis den ikke er angivet, forudsættes den første uge at være den uge, hvor januar 1 forekommer.

Indstillinger

Der er følgende indstillinger for intervalargument:

Indstilling

Beskrivelse

åååå

År

k

Kvartal

m

Måned

y

Dag i året

d

Dag

w

Ugedag

ww

Uge

h

Time

n

Minut

s

Sekund

Argumentet førsteugedag har følgende indstillinger:

Konstant

Værdi

Beskrivelse

vbUseSystem

0

Brug indstillingen NLS API.

vbSunday

1

Søndag (standard)

vbMonday

2

Mandag

vbTuesday

3

Tirsdag

vbWednesday

4

Onsdag

vbThursday

5

Torsdag

vbFriday

6

Fredag

vbSaturday

7

Lørdag

Konstant

Værdi

Beskrivelse

vbUseSystem

0

Brug indstillingen NLS API.

vbFirstJan1

1

Start med uge, hvor 1 januar forekommer (standard).

vbFirstFourDays

2

Start med den første uge, der har mindst fire dage i det nye år.

vbFirstFullWeek

3

Start med den første hele uge i året.

Bemærkninger

Du kan bruge funktionen DateDiff til at bestemme, hvor mange tidsintervaller der skal være mellem to datoer. Du kan for eksempel bruge DateDiff til at beregne antallet af dage mellem to datoer eller antallet af uger mellem dags dato og årets slutning.

Hvis du vil beregne antallet af dage mellem dato1 og dato2, kan du bruge enten Dag i året ("y") eller Dag ("d"). Når interval er Ugedag ("w"), returnerer DateDiff antallet af uger mellem de to datoer. Hvis dato1 falder på en mandag, tæller DateDiff antallet af mandage indtil dato2. Den tæller dato2, men ikke dato1. Hvis interval er Uge ("ww"), returnerer funktionen DateDiff antallet af kalenderuger mellem de to datoer. Den tæller antallet af søndage mellem dato1 og dato2. DateDiff tæller dato2, hvis det er en søndag, men den tæller ikke dato1, heller ikke selvom den falder på en søndag.

Hvis dato1 refererer til et senere tidspunkt end dato2, returnerer funktionen DateDiff et negativt tal.

Argumentet førsteugedag påvirker beregninger, der anvender intervalsymbolerne "w" og "ww".

Hvis dato1 eller dato2 er en datokonstant, bliver det angivne år en permanent del af den pågældende dato. Men hvis dato1 eller dato2 er omsluttet af dobbelte anførselstegn (""), og du udelader året, indsættes det aktuelle år i din kode, hver gang udtrykket dato1 eller dato2 evalueres. Det gør det muligt at skrive kode, der kan bruges i forskellige år.

Når du sammenligner 31. december med 1. januar i det efterfølgende år, returnerer DateDiff 1 for År ("åååå"), selvom det kun er én dag.

Bemærk!:  Den angivne dato skal være gregoriansk for dato1 og dato2, hvis egenskabsindstillingen Kalender er Gregoriansk. Hvis kalenderen er hijri, skal den angivne dato være hijri.

Eksempler på DateDiff-forespørgsel

Udtryk

Resultat

Vælg DateDiff ("åååå", #01/01/2010 #, [DateofSale]) som Udtryk1 fra ProductSales;

Returnerer forskellen mellem Date2 og dato1 (Overvej dato1 som ældste og Date2 som nyeste) som antal år. Resultat: forskellen mellem værdierne i feltet "DateofSale" og datoen "01/01/2010" som antallet af ' år '.

Vælg DateDiff ("q", [DateofSale], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateofSale" som antallet af ' kvartaler ' (baseret på kalenderåret) og vises i kolonnen "DaysSinceSale". Returnerer forskellen mellem systemdatoen og "DateofSale" som antal måneder og vises i kolonnen "DaysSinceSale".

Vælg DateDiff ("y", [DateofSale], dato ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateofSale" som antal dage og vises i kolonnen "DaysSinceSale".

Vælg DateDiff ("d", [DateofSale], dato ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateofSale" som antal dage og vises i kolonnen "DaysSinceSale".

Vælg DateDiff ("w", [DateofSale], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateofSale" som antallet af ' ugedage ' og vises i kolonnen "DaysSinceSale". Hvis "DateofSale" falder på en mandag, tæller DateDiff antallet af mandag til systemdato. Det tæller systemdatoen, men ikke værdien i "DateofSale".

Vælg DateDiff ("WW", [DateofSale], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateofSale" som antallet af "kalenderuger" og vises i kolonnen "DaysSinceSale". Det tæller antallet af søndage mellem "DateofSale" og "systemdato". Systemdatoen tælles, hvis den falder på en søndag. men tæller ikke "DateofSale", selvom det falder på en søndag.

Vælg DateDiff ("h", [DateTime], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateTime" som antallet af ' timer ' og vises i kolonnen "DaysSinceSale".

Vælg DateDiff ("n", [DateTime], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateTime" som antallet af ' minutters ' og vises i kolonnen "DaysSinceSale".

Vælg DateDiff ("s", [DateTime], Date ()) som DaysSinceSale fra ProductSales;

Returnerer forskellen mellem systemdatoen og "DateTime" som antal sekunder og vises i kolonnen "DaysSinceSale".

Eksempel på et udtryk

Brug af funktionen DateDiff i et udtryk     Du kan bruge funktionen DateDiff , hvor du kan bruge udtryk. Lad os antage, at du har en formular, som du bruger til at indfri kundeordrer. I tabellen Ordrer har du et felt med navnet ReceiveBefore, der indeholder den dato, hvor kunden skal modtage ordren. Du kan bruge funktionen DateDiff med et tekstfelt i formularen til at vise antallet af dage, der er tilbage, før ordren skal afsendes.

Hvis det tager 10 dage at levere en ordre, skal du angive egenskaben Kontrolelementkilde for tekstfeltet således:

=DateDiff(“d”, Nu(), [Ordrer].[ReceiveBefore])-10

Når du åbner formularen i formularvisning, viser tekstfeltet antallet af dage, der er tilbage, før ordren skal afsendes. Hvis der er mindre end 10 dage tilbage, før kunden skal modtage ordren, er tallet i tekstboksen negativt, og det angiver, hvor mange dage ordren kommer for sent, hvis den afsendes straks.

VBA-eksempel

Brug funktionen DateDiff i VBA-kode    

I dette eksempel bruges funktionen DateDiff til at vise antallet af dage mellem en given dato og dags dato.

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg

Bemærk!:  Denne side er oversat ved hjælp af automatisering og kan indeholde grammatiske fejl og unøjagtigheder. Det er vores hensigt, at dette indhold skal være nyttigt for dig. Var disse oplysninger nyttige? Her er artiklen på engelsk, så du kan sammenligne.

Se også

Vælge funktionen til højre dato

Har du brug for mere hjælp?

Udvid dine Office-færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×