Výpočet veku a doby trvania v Exceli: Od narodenia po pracovný pomer
Excel je mocný nástroj, ktorý nám umožňuje vykonávať rôzne výpočty, vrátane tých, ktoré sa týkajú dátumov. V tomto článku sa pozrieme na to, ako v Exceli vypočítať vek osoby s presnosťou na roky, mesiace alebo dokonca dni, ako aj na výpočet doby trvania pracovného pomeru. Tieto funkcie sú užitočné pre rôzne administratívne úkony, od overovania veku dieťaťa pre školské potvrdenia až po sledovanie dĺžky zamestnania.
Základný výpočet rozdielu medzi dátumami
Excel nám umožňuje jednoduchým rozdielom dvoch dátumov zistiť, koľko dní uplynulo medzi nimi. Pre výpočet veku môžeme do susedného stĺpca vedľa dátumu narodenia (označeného teraz nesprávne ako Vek) napísať aktuálny dnešný dátum. Do nasledujúceho stĺpca potom napíšeme vzorec, ktorým vypočítame rozdiel dvoch buniek s dátumami v riadku vedľa.

Ak sa v stĺpci objaví namiesto počtu dní dátum, nezúfajte. Problém je len vo formáte buniek. Tento získaný výsledok má však nevýhodu - platí iba k dátumu, ktorý sme uviedli ako "dnešný". Aby sme neboli viazaní len na jeden konkrétny dátum, použijeme pri výpočte vo vzorci ďalšiu funkciu.
Použitie funkcie TODAY() pre aktuálny dátum
Dátumová funkcia TODAY() v Exceli používa vždy aktuálny dátum z kalendára počítača. Teda aktuálny dátum nemusíme vôbec písať do tabuľky. Výpočet prebehne vždy, keď súbor otvoríme, k novému aktuálnemu "dnešnému" dátumu. Funkcia vyzerá pri zápise trošku čudne, pretože je bezargumentová - nemá v zátvorke žiadny argument. Dovnútra funkcie nepíšeme nič, ani medzeru.
Podobne ako v predchádzajúcom postupe, ak sa v stĺpci objaví namiesto počtu dní dátum, problém je len vo formáte buniek. Takto sme dostali počet dní života pracovníka. Ak chceme počet rokov, výsledok musíme ešte premeniť na roky. Keďže každý štvrtý rok je priestupný, vydelíme získaný počet dní života číslom 365,25. Výsledok môžeme zobraziť len na celé roky pomocou funkcie INT (integer), ktorá zabezpečí zobrazenie len celočíselnej časti.
Presnejší výpočet pomocou funkcie YEARFRAC()
Pre presnejší výpočet veku môžeme použiť inú dátumovú funkciu Excelu - YEARFRAC(). Výpočet spravíme vo vedľajšom stĺpci, aby sme mohli porovnať výsledky. Pri porovnaní oboch stĺpcov Vek vidíme rozdiel. Vek počítaný rozdielom a delením 365,25 nie je celkom presný. Výsledok získaný funkciou YEARFRAC() je pri korektne zadaných vstupných hodnotách presný.

Namiesto dátumu narodenia do nej vpíšeme alebo skopírujeme z inej tabuľky dátumy nástupu pracovníkov do zamestnania. Ak potrebujeme len celé roky, alebo sa nám nepáči počet desatinných miest, môžeme ho upraviť pomocou nástrojov so šípkami na karte Domov na paneli Číslo (Formát čísla). Tieto nástroje pridávajú a odoberajú počet zobrazených desatinných miest.
Samozrejme, že dobu trvania pracovného pomeru vieme vypočítať aj prvým spôsobom popísaným vyššie - odčítaním dvoch dátumov a vydelením rozdielu 365,25.
Výpočet veku s presnosťou na roky a mesiace pomocou DATEDIF()
Funkcia DATEDIF() je ďalšou užitočnou funkciou pre prácu s dátumami v Exceli, ktorá umožňuje vypočítať rozdiel medzi dvoma dátumami v rokoch, mesiacoch alebo dňoch. Jej syntax je: DATEDIF(start_date, end_date, unit).
start_date: Počiatočný dátum.end_date: Koncový dátum.unit: Jednotka, v ktorej chceme výsledok zobraziť. Môže to byť"y"pre roky,"m"pre mesiace,"d"pre dni,"ym"pre mesiace (ignorujúc roky),"yd"pre dni (ignorujúc roky), a"md"pre dni (ignorujúc roky a mesiace).
Príklad výpočtu veku s presnosťou na roky a mesiace:
=DATEDIF(C3;TODAY();"y")&" r. "&DATEDIF(C3;TODAY();"ym")&" m."
kde C3 je bunka s dátumom narodenia. Tento vzorec zobrazí vek v tvare "X r. Y m.".

Viacero spôsobov výpočtu vrátane problémov pri použití skloňovaných slovenských slov rok, roky, rokov,… aj s anglickou verziou vidno na obrázku nižšie. Pre praktické použitie odporúčam vybrať si ten spôsob, ktorému najlepšie rozumiete.
Zistenie dátumu narodenia z rodného čísla
Zistiť dátum narodenia z rodného čísla je v Exceli tiež možné pomocou niekoľkých jednoduchých funkcií. Budeme k tomu potrebovať funkcie ako MID(), LEFT(), RIGHT(), LEN(), DATE() a IF().
- Príprava dát: Pripravíme si príklad s piatimi rodnými číslami.
- Rok narodenia: Rok narodenia zistíme najľahšie pomocou funkcie
LEFT(). Budú to prvé dva znaky zľava. Dôležité je zistiť aj dĺžku rodného čísla pomocou funkcieLEN(), pretože od 1. 1. 1954 sa za lomku dávali 4 číslice a do 31. 12. 1953 iba tri číslice. Ak sú prvé dve číslice napr.08a dĺžka rodného čísla je 10 znakov, pripočítame1900a rok narodenia bude1908. V prípade, že dĺžka je 11 znakov, musíme funkciouIF()otestovať, či je rok narodenia väčší ako53. Poznámka: ak by bolo rodné číslo bez lomky, skúmali by sme, či má 9 resp. 10 znakov. - Mesiac narodenia: Mesiac narodenia zistíme podobne pomocou funkcie
MID(). Musíme ale ženám odrátať číslo50. Výsledok funkcieMID()je text. - Deň narodenia: Deň narodenia môžeme získať pomocou funkcie
MID()a následným prevodom na číslo. - Spojenie dátumu: Keď poznáme deň, mesiac a rok narodenia, potrebujeme na ich spojenie funkciu
DATE().

Výpočet počtu dní v mesiaci
Vypočítať počet dní v mesiaci v Exceli je tiež jednoduché. Princíp výpočtu je založený na tom, že dátum je v Exceli poradové číslo dňa od 1. 1. 1900, čiže je to obyčajné číslo s ktorým sa dajú robiť výpočty.
Ak nevieme, aký je posledný deň aktuálneho mesiaca, vieme, ktorý je prvý budúceho. Napríklad, ak máme dátum 1. 2., vieme, že prvý deň budúceho mesiaca je 1. 3..
- Zistíme rok pomocou funkcie
YEAR(). - Zistíme mesiac pomocou funkcie
MONTH(). - Deň z dátumu radiť nemusíme, lebo prvý deň v mesiaci je vždy
1. - Vypočítame prvý deň tohto mesiaca.
- Podobne vypočítame prvý deň budúceho mesiaca pomocou funkcie
DATE(), kde v druhom riadku funkcieDATE()dáme+1. Tým sa nám zväčší mesiac o 1, čiže bude budúci mesiac. - Funkcia
EOMONTH()vypočíta posledný deň v mesiaci (po pripočítaní alebo odpočítaní počtu mesiacov, my budeme pridávať nula mesiacov, teda bude to posledný deň mesiaca, z ktorého je dátum). No a posledný deň je číslo, ktoré znamená počet dní v danom mesiaci.
Funkcie a vzorce pre dátum v Exceli
Samozrejme, možností ako vypočítať v Exceli počet dní v mesiaci je ešte veľa. Ak vám prišlo na um, či by sa nedala funkcia DAY() s posledným dňom v mesiaci použiť aj pri vzorcoch (naše prvé riešenie), tak odpoveď je: dala. Bolo by to rýchlejšie a jednoduchšie riešenie.
Dôležitosť štandardizácie týždňov: Príklad z praxe
Pri práci s dátumami, najmä v medzinárodnom kontexte, je dôležité uvedomiť si rozdielne spôsoby označovania týždňov. Funkcie ako WEEKNUM() a ISOWEEKNUM() v Exceli nám pomáhajú pracovať s týždňami.
WEEKNUM()vráti poradové číslo týždňa dátumu v odkazovanej bunke.ISOWEEKNUM()vráti tiež poradové číslo týždňa dátumu v odkazovanej bunke, na rozdiel odWEEKNUM()je však výsledok číslo týždňa podľa medzinárodného štandardu ISO 8601.
Existujú krajiny, ktoré považujú za prvý týždeň v roku ten, v ktorom je 1. január. Súčasne existujú krajiny považujúce za prvý týždeň roka ten, v ktorom pripadne 1. január na pondelok, utorok, stredu alebo štvrtok.
Medzinárodná štandardizačná organizácia zaviedla koncom 80-tych rokov definíciu ISO 8601. Napríklad, exportér oznámi zahraničnému obchodnému partnerovi, že tovar bude pripravený na expedíciu od utorka v 23. týždni. Ten objedná na prepravu kamión, loď, lietadlo na prevoz tovaru do svojho skladu. A… nič. Kamión čaká, zásielku nevedia v sklade nájsť. Telefonáty, nadávky, nervozita. Po hodine pátrania sa zistí, že informácia je správna, avšak nový pracovník použil miestne označenie týždňa. Nenapadlo mu, že v zahraničí môže byť týždeň označený inak (vlastná skúsenosť autora s exportérom). Preto je pri medzinárodnej komunikácii kľúčové používať štandardizované označenia, ako napríklad tie definované v ISO 8601 prostredníctvom funkcie ISOWEEKNUM().
Praktické aplikácie a ďalšie možnosti
Tieto isté princípy a vzorce môžeme použiť v praxi napríklad pri zisťovaní, či má rodič zamestnávateľovi priniesť potvrdenie o návšteve školy (vo vzorci použijeme pri odrátaní dátum narodenia dieťaťa a TODAY() alebo namiesto TODAY() konkrétny dátum pomocou DATE(), ku ktorému povinnosť zisťujeme) a pri množstve iných praktických úloh.
Chcete vedieť o práci s Excelom a časovými funkciami viac? Príďte na kurz Excelu, dozviete sa a na príkladoch vyskúšate.
tags: #excel #dni #po #narodeni
