Funkcia DateDiff

Vráti hodnotu typu Variant (Long), ktorý určí počet časových intervalov medzi dvoma zadanými dátumami.

Pozrite si niekoľko príkladov

Syntax

DateDiff ( interval, dátum1, dátum2 [, prvýdeňtýždňa] [, prvýtýždeňroka] )

Syntax funkcie DateDiff má tieto argumenty:

Tip : V Accesse 2010 je súčasťou zostavovača výrazov funkcia IntelliSense, vďaka ktorej vidíte, ktoré argumenty sa vo výraze vyžadujú.

Argument

Popis

interval

Povinný argument. Reťazcový výraz, ktorý vyjadruje časový interval, ktorý sa použije na výpočet rozdielu medzi argumentmi dátum1 a dátum2.

dátum1, dátum2

Povinný argument. Variant (Date). Dva dátumy, ktoré chcete použiť vo výpočte.

prvýdeňtýždňa

Voliteľný argument. Je to konštanta, ktorá určuje prvý deň v týždni. Ak nie je zadaná, predpokladá sa, že je to nedeľa.

prvýtýždeňroka

Voliteľný argument. Je to konštanta, ktorá určuje prvý týždeň roka. Ak nie je zadaná, za prvý týždeň sa považuje týždeň, do ktorého spadá 1. január.


Nastavenia

Argument interval má tieto nastavenia:

Nastavenie

Popis

yyyy

Rok

q

Štvrťrok

m

Mesiac

y

Deň v roku

d

Deň

w

Deň v týždni

ww

Týždeň

h

Hodina

m

Minúta

s

Sekunda


Na začiatok stránky

Argument prvýdeňtýždňa má tieto nastavenia:

Konštanta

Hodnota

Popis

vbUseSystem

0

Použije sa nastavenie NLS API.

vbSunday

1

Nedeľa (predvolené)

vbMonday

2

Pondelok

vbTuesday

3

Utorok

vbWednesday

4

Streda

vbThursday

5

Štvrtok

vbFriday

6

Piatok

vbSaturday

7

Sobota


Konštanta

Hodnota

Popis

vbUseSystem

0

Použije sa nastavenie NLS API.

vbFirstJan1

1

Začína sa týždňom, do ktorého spadá 1. január (predvolená možnosť).

vbFirstFourDays

2

Začína sa prvým týždňom, v ktorom sa nachádzajú aspoň štyri dni nového roka.

vbFirstFullWeek

3

Začína sa prvým celým týždňom v roku.


Poznámky

Funkciu DateDiff môžete použiť na určenie, koľko zadaných časových intervalov existuje medzi dvomi dátumami. Funkciu DateDiff môžete napríklad použiť na výpočet počtu dní medzi dvomi dátumami, alebo počtu týždňov medzi dnešným dňom a koncom roka.

Na výpočet počtu dní medzi hodnotami dátum1 a dátum2 môžete použiť buď Deň v roku (ďalej len „y“) alebo Deň (ďalej len „d“). Keď je argument interval nastavený na hodnotu Deň v týždni („w“), funkcia DateDiff vráti počet týždňov medzi dvomi dátumami. Ak argument dátum1 pripadne na pondelok, funkcia DateDiff spočíta počet pondelkov po dátum2. Započíta aj dátum2, ale nezapočíta dátum1. Ak je však argument interval Týždeň („ww“), funkcia DateDiff vráti počet kalendárnych týždňov medzi dvomi dátumami. Spočíta počet nedieľ medzi hodnotami dátum1 a dátum2. Funkcia DateDiff započíta dátum2, ak pripadne na nedeľu, ale nezapočíta dátum1, a to ani ak pripadne na nedeľu.

Ak argument dátum1 odkazuje na neskorší časový bod, než je argument dátum2, funkcia DateDiff vráti záporné číslo.

Argument prvýdeňtýždňa ovplyvní výpočty, ktoré používajú intervalové symboly „w“ a „ww“.

Ak hodnoty dátum1 alebo dátum2 predstavujú doslovný dátumový údaj, zadaný rok sa stane trvalou súčasťou daného dátumu. Ak je však hodnota argumentu dátum1 alebo dátum2 uzavretá v dvojitých úvodzovkách (" ") a vynecháte rok, pri každom vyhodnocovaní výrazov dátum1 alebo dátum2 sa do vášho kódu vloží aktuálny rok. Takto je možné písať kód, ktorý sa bude môcť používať v rôznych rokoch.

Pri porovnávaní 31. decembra a 1. januára nasledujúceho roka vráti funkcia DateDiff pre nastavenie Rok („yyyy“) hodnotu 1, napriek tomu, že uplynul iba jeden deň.

Poznámka :  Pre argumenty dátum1 a dátum2 platí, že ak vlastnosť Kalendár je nastavená na možnosť Gregoriánsky, zadaný dátum musí byť podľa gregoriánskeho kalendára. Ak ide o kalendár Hedžra, zadaný dátum musí byť podľa kalendára Hedžra.

Na začiatok stránky

Príklady

Použitie funkcie DateDiff vo výraze     Funkciu DateDiff môžete použiť všade tam, kde môžete použiť výrazy. Povedzme napríklad, že máte formulár, ktorý používate na vybavenie objednávok zákazníkov. V tabuľke Objednávky máte pole s názvom PrijaťPred, ktoré obsahuje dátum, ku ktorému zákazník potrebuje objednávku prijať. Pomocou funkcie DateDiff s textovým poľom vo formulári môžete zobraziť počet zostávajúcich dní, kedy je potrebné objednávku odoslať.

Za predpokladu, že odoslanie ľubovoľnej objednávky trvá desať dní, nastavte vlastnosť ControlSource pre textové pole takto:

=DateDiff(“d”, Now(), [Objednávky].[PrijaťPred])-10

Keď otvoríte formulár v zobrazení formulára, textové pole zobrazí počet zostávajúcich dní, dokedy je objednávku potrebné odoslať. Ak zostáva menej ako 10 dní do dňa, kedy zákazník potrebuje objednávku prijať, číslo v textovom poli bude záporné a udáva počet dní oneskorenia doručenia objednávky za predpokladu, že sa odošle okamžite.

Použitie funkcie DateDiff v kóde VBA    

Poznámka : Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.

V tomto príklade je funkcia DateDiff použitá na zobrazenie počtu dní medzi daným dátumom a dnešným dňom.

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg
Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×