Datumové a časové funkce

  • parametry uvedené v hranatých závorkách jsou nepovinné – vždy je uvedena i jejich výchozí hodnota
  • některé funkce se nemusí nacházet ve starších verzích Excelu
  • funkce jsou seřazeny abecedně podle svého českého názvu

Funkce ČAS

  • anglický název: TIME
  • ze zadaného počtu hodin, minut a sekund sestaví časový údaj
  • všechny údaje jsou sice formálně povinné, ale případně je možné některý nevyplnit
  • funkce svým použitím nastaví formát ve tvaru h:mm odp./dop. (např. 10:25 odp.), formát je možné libovolně změnit
  • =ČAS(hodina;minuta;sekunda)
  • parametry
    • hodina – počet hodin
    • minuta – počet minut
    • sekunda – počet sekund
  • příklad
    • =ČAS(A1;A2;A3)
    • z počtu hodin v buňce A1, minut v buňce A2 a sekund v buňce A3 sestaví časový údaj
  • příklad
    • =ČAS(A1;A2;)
    • z počtu hodin v buňce A1 a minut v buňce A2 sestaví časový údaj

Funkce ČASHODN

  • anglický název: TIMEVALUE
  • textový řetězec vypadající jako časový údaj převede na čas
  • funkce svým použitím nenastaví časový formát, takže výsledkem bude zlomek dne, formát je potřeba nastavit ručně
  • pokud je vstupem přímo časový údaj, tak funkce vrátí chybu
  • =ČASHODN(čas)
  • parametry
    • čas – převáděný textový řetězec
  • příklad
    • =ČASHODN(A1)
    • převede textový řetězec z buňky A1 na časový údaj

Funkce DATEDIF

  • vypočítá počet dnů, měsíců nebo let mezi dvěma zadanými daty
  • ve starších verzích mohla funkce dávat nepřesné výsledky (zvláště u parametru MD) podle přestupnosti roku
  • funkce je skrytá, nenapovídá se v našeptávači
  • =DATEDIF(date1;date2;interval)
  • parametry
    • date1 – počáteční datum
    • date2 – konečné datum
    • interval – typ období, jehož počet se má počítat (“Y” = počet celých let, “M” = počet celých měsíců, “D” = počet dnů, “MD” = počet dnů, přičemž se nepřihlíží k měsícům a rokům, “YM” = počet celých měsíců, přičemž se nepřihlíží ke dnům a rokům, “YD” = počet dnů, přičemž se nepřihlíží k rokům, ale k měsícům ano)
  • příklad
    • =DATEDIF(A1;A2;”M”)
    • počet celých měsíců, které uplynuly mezi datumem v buňce A1 a datumem v buňce A2
    • =DATEDIF(A1;A2;”YM”)
    • počet celých měsíců, které uplynuly mezi datumem v buňce A1 a datumem v buňce A2 s ignorováním roku, tj. jako by obě data byla ve stejném roku

Funkce DATUM

  • anglický název: DATE
  • ze zadaného čísla roku, měsíce a dne sestaví datumový údaj
  • =DATUM(year;month;day)
  • parametry
    • year – číslo roku
    • month – číslo měsíce
    • day – číslo dne
  • příklad
    • =DATUM(A3;A2;A1)
    • z čísla roku v buňce A3, čísla měsíce v buňce A2 a čísla dne v buňce A1 sestaví datumový údaj

Funkce DATUMHODN

  • anglický název: DATEVALUE
  • textový řetězec vypadající jako datumový údaj převede na datum
  • funkce svým použitím nenastaví datumový formát, takže výsledkem bude pořadové číslo (počet dnů od 1.1.1900), formát je potřeba nastavit ručně
  • pokud je vstupem přímo datumový údaj, tak funkce vrátí chybu
  • =DATUMHODN(datum)
  • parametry
    • datum – převáděný textový řetězec
  • příklad
    • =DATUMHODN(A1)
    • převede textový řetězec z buňky A1 na datumový údaj

Funkce DAYS

  • vypočítá počet dní mezi dvěma datumy
  • k výpočtu se použije vzorec konec-začátek, tj. jeden z krajních datumů se nepočítá jako součást intervalu (viz příklad s 5.1. a 7.1.), pokud se počítá má, tak je potřeba od výsledku odečíst číslo 1
  • =DAYS(konec;začátek)
  • parametry
    • konec – konečné datum
    • začátek – počáteční datum
  • příklad
    • =DAYS(A2;A1)
    • vypočítá počet dní od datumu v buňce A1 do datumu v buňce A2

Funkce DEN

  • anglický název: DAY
  • z datumu získá jen číslo dne
  • =DEN(pořadové_číslo)
  • parametry
    • pořadové_číslo – datum
  • příklad
    • =DEN(A1)
    • číslo dne z datumu uvedeného v buňce A1

Funkce DENTÝDNE

  • anglický název: WEEKDAY
  • zjistí z datumu o který den v týdnu se jedná (ve tvaru čísla)
  • při zadání typu 2
    • týden začíná pondělím
    • výsledek 1=pondělí, 2=úterý, 3 = středa, …
  • =DENTÝDNE(pořadové;[typ])
  • parametry
    • pořadové – datum
    • [typ] – způsob počítání dnů v týdnů (vých. = 1, českým zvyklostem odpovídá typ 2)
  • příklad
    • =DENTÝDNE(A1;2)
    • číselně vyjádřený den v týdnu datumu z buňky A1

Funkce DNES

  • anglický název: TODAY
  • vrátí aktuální datum
  • =DNES()
  • parametry
    • funkce nemá žádné parametry
  • příklad
    • =DNES()
    • dnešní datum

Funkce EDATE

  • datum posune o zadaný počet měsíců dopředu či dozadu tak, aby se nezměnil den v měsíci, tj. např. z 15.1. se stane 15.2., 15.3. apod.
  • pokud by mělo vzniknout neexistující datum (např. 30.2.), tak se použije nejbližší existující předchozí datum
  • funkce svým použitím nenastaví datumový formát, takže výsledkem bude pořadové číslo (počet dní od 1.1.1900), formát je potřeba nastavit ručně
  • =EDATE(začátek;měsíce)
  • parametry
    • začátek – počáteční datum
    • měsíce – počet měsíců, o který se má posunout dopředu (kladná hodnota) či dozadu (záporná hodnota)
  • příklad
    • =DENTÝDNE(A1;3)
    • posune datum z buňky A1 o tři měsíce dopředu

Funkce EOMONTH

  • zjistí poslední den v měsíci
  • funkce svým použitím nenastaví datumový formát, takže výsledkem bude pořadové číslo (počet dní od 1.1.1900), formát je potřeba nastavit ručně
  • =EOMONTH(začátek;měsíce)
  • parametry
    • začátek – libovolné datum v měsíci
    • měsíce – počet měsíců o který se chceme posunout směrem dopředu (kladná hodnota) či dozadu (záporná hodnota), pokud zadáme nulu, tak se zjistí poslední den v daném měsíci
  • příklad
    • =EOMONTH(A1;0)
    • zjistí poslední den měsíce, do kterého patří datum uvedený v buňce A1
  • příklad
    • =EOMONTH(A1;3)
    • zjistí poslední den třetího měsíce po měsíci, do kterého patří datum uvedený v buňce A1

Funkce HODINA

  • anglický název: HOUR
  • z časového údaje vrátí počet hodin jako číslo od 0 do 23
  • =HODINA(pořadové_číslo)
  • parametry
    • pořadové_číslo – časový údaj
  • příklad
    • =HODINA(A1)
    • počet hodin z času uvedeného v buňce A1

Funkce WEEKNUM

  • vrátí pořadové číslo týdne, do kterého patří zadaný datum
  • =WEEKNUM(pořad_číslo;[typ])
  • parametry
    • pořad_číslo – zadaný datum
    • [typ] – způsob počítání týdnů v roce (vých. = 1, evropským zvyklostem odpovídá typ 21)
  • příklad
    • =WEEKNUM(A1;21)
    • číslo týdne, do kterého spadá datum z buňky A1

Funkce ISOWEEKNUM

  • vrátí pořadové číslo týdne, do kterého patří zadaný datum, a to dle evropského způsobu
  • =ISOWEEKNUM(datum)
  • parametry
    • datum – zadaný datum
  • příklad
    • =ISOWEEKNUM(A1)
    • číslo týdne, do kterého spadá datum z buňky A1

Funkce MĚSÍC

  • anglický název: MONTH
  • z datumu získá jen číslo dne
  • =MĚSÍC(pořadové_číslo)
  • parametry
    • pořadové_číslo – datum
  • příklad
    • =MĚSÍC(A1)
    • číslo měsíce z datumu uvedeného v buňce A1

Funkce ROK

  • anglický název: YEAR
  • z datumu získá jen číslo dne
  • =ROK(pořadové_číslo)
  • parametry
    • pořadové_číslo – datum
  • příklad
    • =ROK(A1)
    • číslo roku z datumu uvedeného v buňce A1

Funkce MINUTA

  • anglický název: MINUTE
  • z časového údaje vrátí počet minut jako číslo od 0 do 59
  • =MINUTA(pořadové_číslo)
  • parametry
    • pořadové_číslo – časový údaj
  • příklad
    • =MINUTA(A1)
    • počet minut z času uvedeného v buňce A1

Funkce SEKUNDA

  • anglický název: SECOND
  • z časového údaje vrátí počet hodin jako číslo od 0 do 59
  • =SEKUNDA(pořadové_číslo)
  • parametry
    • pořadové_číslo – časový údaj
  • příklad
    • =SEKUNDA(A1)
    • počet sekund z času uvedeného v buňce A1

Funkce NETWORKDAYS

  • vypočte počet pracovních dnů mezi počátečním a koncovým datumem včetně těchto dvou datumů
  • přeskočí nepracovní dny, a to vždy soboty a neděle a příp. i svátky
  • kdy jsou svátky (příp. i jiné nepracovní dny – např. celozávodní dovolená) je nutno funkci říci
  • =NETWORKDAYS(začátek;konec;[svátky])
  • parametry
    • začátek = počáteční datum
    • konec = koncové datum
    • [svátky] = oblast s datumy označující další nepracovní dny – např. svátky (vých. = nic)
  • příklad
    • =NETWORKDAYS(A1;A2)
    • počet pracovních dnů mezi dvěma daty (počáteční datum v buňce A1 a koncové datum v buňce A2) bez zadání svátků (přeskočí se jen soboty a neděle)
  • příklad
    • =NETWORKDAYS(A1;A2;A4:A5)
    • počet pracovních dnů mezi dvěma daty (počáteční datum v buňce A1 a koncové datum v buňce A2) se zadáním svátků (svátky v oblasti A4:A5)

Funkce NETWORKDAYS.INTL

  • vypočte počet pracovních dnů mezi počátečním a koncovým datumem včetně těchto dvou datumů
  • přeskočí nepracovní dny – jako nepracovní dny je možné určit konkrétní dny v týdnu (nejen soboty a neděle) a příp. i svátky
  • =NETWORKDAYS.INTL(začátek;konec;[víkend];[svátky])
  • parametry
    • začátek = počáteční datum
    • konec = koncové datum
    • [víkend] = parametr určující, které dny budou chápány jako nepracovní (vých. = 1), např. soboty a neděle (1), pouze neděle (11) apod. ; možný je i parametr např. ve tvaru “0000111” znamenající, že jako víkend bude brány dny od pátku do neděle (číslovky 1) a jako pracovní dny budou brány dny od pondělí do čtvrtku (číslovky 0)
    • [svátky] = oblast s datumy označující další nepracovní dny – např.  svátky (vých. = nic)
  • příklad
    • =NETWORKDAYS.INTL(A1;A2;11;A4:A5)
    • počet pracovních dnů mezi dvěma daty (počáteční datum v buňce A1 a koncové datum v buňce A2), jako nepracovní dny se berou jen neděle (parametr 11) a zadané svátky (oblast A4:A5)

Funkce NYNÍ

  • anglický název: NOW
  • vrátí aktuální čas
  • =NYNÍ()
  • parametry
    • funkce nemá žádné parametry
  • příklad
    • =NYNÍ()
    • aktuální čas

Funkce ROK360

  • anglický název: DAYS360
  • vypočítá počet dnů mezi dvěma daty na základě roku s 360 dny, rok s 360 dny se někdy používá jako zjednodušení např. při výpočtu úroků
  • =ROK360(start;konec;[metoda])
  • parametry
    • start – počáteční datum
    • konec – konečné datum
    • [metoda] – způsob zacházení s konečným datem, pokud je 31. dnem v měsíci (vých.=NEPRAVDA) – při volbě NEPRAVDA (USA metoda NASD) se den započítá, při volbě PRAVDA (evropská metoda) se nezapočítá (jako by měl daný měsíc 30 dnů)
  • příklad
    • =ROK360(A1;A2)
    • vypočítá počet dní od datumu v buňce A1 do datumu v buňce A2
  • příklad
    • =ROK360(A4;A5;PRAVDA)
    • vypočítá počet dní od datumu v buňce A4 do datumu v buňce A5, i když je v buňce A5 31. den v měsíci, tak bude započítáno jako by měl měsíc jen 30 dní

Funkce WORKDAY

  • vypočte datum následující po uběhnutí zadaného počtu pracovních dnů od počátečního data
  • přeskočí nepracovní dny, a to vždy soboty a neděle a příp. i svátky
  • funkce svým použitím nenastaví datumový formát, takže výsledkem bude pořadové číslo (počet dnů od 1.1.1900), formát je potřeba nastavit ručně
  • funkce WORKDAY pracuje s krajními dny obdobně jako funkce DAYS – tj. jeden ze dnů není považován za součást intervalu (tj. když např. začneme pracovat v pondělí a pracujeme tři dny, tak uvede jako výsledek čtvrtek – pokud chceme uvést středu, tak musíme od výsledku odečíst číslo 1) – liší se v tom od funkce NETWORKDAYS
  • =WORKDAY(začátek;dny;[svátky])
  • parametry
    • začátek = počáteční datum
    • dny = počet uběhlých pracovních dnů
    • [svátky] = oblast s datumy označující další nepracovní dny – např. svátky (vých. = nic)
  • příklad
    • =WORKDAY(A1;A2)-1
    • datum, na který se dostaneme, když začneme pracovat v den uvedený v buňce A1 a pracujeme počet pracovních dnů uvedený v buňce A2 bez zadání svátků (přeskočí se jen soboty a neděle); krajní dny považujeme za součást intervalu
  • příklad
    • =WORKDAY(A1;A2;A4:A5)-1
    • datum, na který se dostaneme, když začneme pracovat v den uvedený v buňce A1 a pracujeme počet pracovních dnů uvedený v buňce A2 se zadáním svátků (svátky v oblasti A4:A5); krajní dny považujeme za součást intervalu

Funkce WORKDAY.INTL

  • vypočte datum následující po uběhnutí zadaného počtu pracovních dnů od počátečního data
  • přeskočí nepracovní dny – jako nepracovní dny je možné určit konkrétní dny v týdnu (nejen soboty a neděle) a příp. i svátky
  • funkce svým použitím nenastaví datumový formát, takže výsledkem bude pořadové číslo (počet dnů od 1.1.1900), formát je potřeba nastavit ručně
  • funkce WORKDAY.INTL pracuje s krajními dny obdobně jako funkce DAYS – tj. jeden ze dnů není považován za součást intervalu (tj. když např. začneme pracovat v pondělí a pracujeme tři dny, tak uvede jako výsledek čtvrtek – pokud chceme uvést středu, tak musíme od výsledku odečíst číslo 1) – liší se v tom od funkce NETWORKDAYS.INTL
  • =WORKDAY.INTL(začátek;dny;[víkend];[svátky])
  • parametry
    • začátek = počáteční datum
    • dny = počet uběhlých pracovních dnů
    • [víkend] = parametr určující, které dny budou chápány jako nepracovní (vých. = 1), např. soboty a neděle (1), pouze neděle (11) apod.; možný je i parametr např. ve tvaru “0000111” znamenající, že jako víkend bude brány dny od pátku do neděle (číslovky 1) a jako pracovní dny budou brány dny od pondělí do čtvrtku (číslovky 0)
    • [svátky] = oblast s datumy označující další nepracovní dny – např. svátky (vých. = nic)
  • příklad
    • =WORKDAY.INTL(A1;A2;11;A4:A5)-1
    • datum, na který se dostaneme, když začneme pracovat v den uvedený v buňce A1 a pracujeme počet pracovních dnů uvedený v buňce A2 – jako nepracovní dny se berou jen neděle (parametr 11) a zadány jsou i svátky (svátky v oblasti A4:A5); krajní dny považujeme za součást intervalu

Funkce YEARFRAC

  • vypočte dobu mezi dvěma datumy ve formě desetinného čísla (např. celý rok=1, půl roku=0,5)
  • =YEARFRAC(začátek;konec;[základna])
  • parametry
    • začátek – počáteční datum
    • konec – konečné datum
    • [základna] – způsob výpočtu (vých. = 0); počítá se jako zlomek, ve kterém se může lišit postup výpočtu jak čitatele (počet dnů mezi daty), tak jmenovatele (počet dnů celého roku)
      • 0 = US NASD 30/360
      • 1 = Skutečný/Skutečný
      • 2 = Skutečný/360
      • 3 = Skutečný/365
      • 4 = Evropské 30/360
    • kde:
      • Skutečný v čitateli = počet dní mezi daty vypočtený funkcí DAYS
      • Skutečný ve jmenovateli = průměr počtu dní všech let, přes které jde interval (vypočtený funkcí DAYS mezi 1.1. a 31.12. daného roku)
      • US NASD 30 = počet dní mezi daty vypočtený funkcí ROK360 s parametrem NEPRAVDA (nebo bez třetího parametru)
      • Evropské 30 = počet dní mezi daty vypočtený funkcí ROK360 s parametrem PRAVDA
  • příklad
    • =YEARFRAC(A1;A2;2)
    • doba mezi datumem z buňky A1 a datumem z buňky A2 vyjádřená jako desetinné číslo, uvažuje se skutečný počet dní