Applies ToAccess za Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Vraća vrijednost Variant (Long) koja označava broj vremenskih intervala između dva navedena datuma.

Sintaksa

DateDiff ( interval, datum1, datum2 [, prvi_dan_u_tjednu] [, prvi_tjedan_godine] )

Sintaksa funkcije DateDiff sadrži sljedeće argumente:

Argument

Opis

interval

Obavezno. Nizovni izraz koji predstavlja vremenski interval koji koristite za izračun razlike između datuma1 i datuma2.

datum1, datum2

Obavezno. Variant (datum). Dva datuma koja želite koristiti za izračun.

prvi_dan_u_tjednu

Neobavezno. Vrsta konstanta koja određuje prvi dan u tjednu. Ako nije određena, kao prvi dan u tjednu koristi se nedjelja.

prvi_tjedan_u_godini

Neobavezno. Konstanta koja određuje prvi tjedan u godini. Ako nije navedeno, pretpostavlja se da je prvi tjedan tjedan u kojem se pojavljuje 1. siječnja.

Postavke

Interval uargument ima sljedeće postavke:

Postavka

Opis

yyyy

Godina

q

Tromjesečje

m

Mjesec

y

Dan u godini

d

Dan

w

Weekday

ww

Tjedan

h

Sat

n

Minuta

s

Sekunda

Argument prvi_dan_u _tjednu ima sljedeće postavke:

Konstanta

Vrijednost

Opis

vbUseSystem

0

Koristite postavku NLS API-ja.

vbSunday

1

Nedjelja (zadano)

vbMonday

2

Ponedjeljak

vbTuesday

3

utorak

vbWednesday

4

Srijeda

vbThursday

5

Četvrtak

vbFriday

6

Petak

vbSaturday

7

Subota

Konstanta

Vrijednost

Opis

vbUseSystem

0

Koristite postavku NLS API-ja.

ee

1

Započnite s tjedanom u kojem se pojavljuje 1. siječnja (zadano).

vbFirstFourDays

2

Započnite s prvim tjedanom koji ima najmanje četiri dana u novoj godini.

vbFirstFullWeek

3

Počnite od prvog punog tjedna u godini.

Napomene

Pomoću funkcije DateDiff možete odrediti koliko određenih vremenskih intervala postoji između dva datuma. Možete, primjerice, koristiti DateDiff da biste izračunali broj dana između dva datuma ili broj tjedana između današnjeg i kraja godine.

Da biste izračunali broj dana između datuma1i datuma2, možete koristiti dan u godini ("y") ili dan ("d"). Kada je interval Radni dan ("w"), DateDiff vraća broj tjedana između ta dva datuma. Ako je datum1 u ponedjeljak, DateDiff broji ponedjeljak do datuma2. Računa datum2, ali ne i datum1. Ako je interval Tjedan ("ww"), funkcija DateDiff vraća broj kalendarskih tjedana između ta dva datuma. Broji nedjelju između datuma1 idatuma2. DateDiffbroji datum2 ako pada na nedjelju; ali ne računa datum1, čak i ako pada na nedjelju.

Ako se datum1 odnosi na noviju točku u vremenu od datuma2, funkcija DateDiff vraća negativan broj.

Argument prvi_dan_u _tjednu utječe na izračune koji koriste simbole intervala "w" i "ww".

Ako je datum1ili datum2datumski literal, navedena godina postaje trajni dio tog datuma. No ako je datum1 ili datum2 u dvostrukim navodnicima (" "), a izostavite godinu, trenutna se godina umeće u kod svaki put kada se izraz date1 ili date2 vrednuju. To omogućuje pisanje koda koji se može koristiti u različitim godinama.

Prilikom usporedbe od 31. prosinca do 1. siječnja sljedeće godine , DateDiff za godinu ("yyyy") vraća 1, iako je istekao samo jedan dan.

Napomena:  Ako je postavkasvojstva Kalendar gregorijanski, navedeni datum mora biti gregorijanski. Ako je kalendar Hidžri, navedeni datum mora biti Hidžri.

Primjeri upita DateDiff

Izraz

Rezultati

SELECT DateDiff("yyyy",#01/01/2010#,[DateofSale]) AS Expr1 FROM ProductSales;

Vraća razliku između datuma2 i datuma1 (datum1 smatra najstarijim i datum2 kao najnovije) kao broj "Godina". Rezultat: razlika između vrijednosti u polju "DateofSale" i datuma "01/01/2010" kao broj "Godina".

SELECT DateDiff("q",[DateofSale],Date()) AS DaysSinceSale FROMProdajaProdaja;

Vraća razliku između datuma sustava i "DateofSale" kao broj "Tromjesečja" (na temelju godine kalendara) i prikazuje u stupcu "DaysSinceSale". vraća razliku između datuma sustava i "DateofSale" kao broj "Mjeseci" i prikazuje se u stupcu "DaysSinceSale".

SELECT DateDiff("y",[DateofSale],Date()) AS DaysSinceSale FROMProdajaProdaja;

Vraća razliku između datuma sustava i "DateofSale" kao broj "Dani" i prikazuje se u stupcu "DaysSinceSale".

SELECT DateDiff("d",[DateofSale],Date()) AS DaysSinceSale FROMProdajaProdaja;

Vraća razliku između datuma sustava i "DateofSale" kao broj "Dani" i prikazuje se u stupcu "DaysSinceSale".

SELECT DateDiff("w",[DateofSale],Date()) AS DaysSinceSale FROMProdajaProdaja;

Vraća razliku između datuma sustava i "DateofSale" kao broj "Radnim danima" i prikazuje se u stupcu "DaysSinceSale". Ako "DateofSale" pada na ponedjeljak, DateDiff broji ponedjeljak do datuma sustava. Broji datum sustava, ali ne i vrijednost u argumentu "DateofSale".

SELECT DateDiff("ww",[DateofSale],Date()) AS DaysSinceSale FROMProdajaProdaja;

Vraća razliku između datuma sustava i "DateofSale" kao broj "Calender Weeks" i prikazuje u stupcu "DaysSinceSale". Broji nedjelju između "DateofSale" i "sistemskog datuma". Broji datum sustava ako padne u nedjelju; ali ne broji "DateofSale", čak i ako padne u nedjelju.

SELECT DateDiff("h",[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Vraća razliku između datuma sustava i "DateTime" kao broj "Sati" i prikazuje se u stupcu "DaysSinceSale".

SELECT DateDiff("n",[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Vraća razliku između datuma sustava i "DateTime" kao broja "Minute" i prikazuje se u stupcu "DaysSinceSale".

SELECT DateDiff("s";[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Vraća razliku između datuma sustava i "DateTime" kao broja "sekundi" i prikazuje se u stupcu "DaysSinceSale".

Primjer izraza

Korištenje funkcije DateDiff u izrazu     Funkciju DateDiff možete koristiti gdje god možete koristiti izraze. Pretpostavimo, primjerice, da imate obrazac koji koristite za ispunjavanje narudžbi klijenata. U tablici Narudžbe imate polje s nazivom ReceiveBefore koje sadrži datum do kojeg kupac mora primiti narudžbu. Funkciju DateDiff možete koristiti s tekstnim okvirom na obrascu da biste prikazali broj preostalih dana prije otpreme narudžbe.

Uz pretpostavku da je za isporuku bilo koje narudžbe potrebno deset dana, svojstvo Izvor kontrole tekstnog okvira postavite na sljedeći način:

=DateDiff("d", Now(), [Narudžbe].[ ReceiveBefore])-10

Kada obrazac otvorite u prikazu obrasca, u tekstnom se okviru prikazuje broj preostalih dana prije otpreme narudžbe. Ako je preostalo manje od 10 dana prije nego što korisnik mora primiti narudžbu, broj u tekstnom okviru negativan je i označava koliko će dana kasniti narudžba ako se odmah otpremi.

Primjer VBA-a

Korištenje funkcije DateDiff u VBA kodu    

U ovom se primjeru pomoću funkcije DateDiff prikazuje broj dana između navedenog datuma i danas.

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

Dodatne informacije

Odabir odgovarajuće funkcije datuma

Potrebna vam je dodatna pomoć?

Želite dodatne mogućnosti?

Istražite pogodnosti pretplate, pregledajte tečajeve za obuku, saznajte kako zaštititi uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na njih, pošaljete povratne informacije i čujete se sa stručnjacima s bogatim znanjem.