Obsah
Výukový program ukazuje různé způsoby, jak získat věk z data narození v aplikaci Excel. Naučíte se několik vzorců pro výpočet věku jako počtu celých let, získání přesného věku v letech, měsících a dnech k dnešnímu datu nebo k určitému datu.
Pro výpočet věku v Excelu neexistuje žádná speciální funkce, existuje však několik různých způsobů, jak převést datum narození na věk. Tento návod vysvětlí výhody a nevýhody jednotlivých způsobů, ukáže, jak vytvořit dokonalý vzorec pro výpočet věku v Excelu a upravit jej pro řešení některých konkrétních úloh.
Jak vypočítat věk z data narození v aplikaci Excel
V každodenním životě je otázka " Kolik je vám let? " obvykle znamená odpověď udávající, kolik let jste naživu. V aplikaci Microsoft Excel si můžete vytvořit vzorec pro výpočet přesného věku v měsících, dnech, hodinách a dokonce i minutách. Buďme však tradiční a naučme se nejprve vypočítat věk z DOB v letech.
Základní vzorec aplikace Excel pro výpočet věku v letech
Jak obvykle zjistíte něčí věk? Jednoduše odečtením data narození od aktuálního data. Tento běžný vzorec pro určení věku lze použít i v aplikaci Excel.
Za předpokladu, že datum narození je v buňce B2, vzorec pro výpočet věku v letech vypadá takto:
=(DNES()-B2)/365
První část vzorce (TODAY()-B2) vrátí rozdíl mezi aktuálním datem a datem narození ve dnech a poté toto číslo vydělíte 365, abyste získali počet let.
Vzorec je zřejmý a snadno zapamatovatelný, nicméně je tu drobný problém. Ve většině případů vrací desetinné číslo, jak ukazuje obrázek níže.
Chcete-li zobrazit počet celých let, použijte funkci INT pro zaokrouhlení desetinného čísla směrem dolů na nejbližší celé číslo:
=INT((DNES()-B2)/365)
Nevýhody: Použití tohoto vzorce pro určení věku v aplikaci Excel poskytuje poměrně přesné výsledky, ale ne bezchybné. Dělení průměrným počtem dní v roce většinou funguje dobře, ale někdy se stane, že se věk určí špatně. Například pokud se někdo narodil 29. února a dnes je 28. února, vzorec udělá osobu o jeden den starší.
Alternativně můžete místo 365 dělit 365,25, protože každý čtvrtý rok má 366 dní. Ani tento přístup však není dokonalý. Pokud například počítáte věk dítěte, které ještě neprožilo přestupný rok, dělení 365,25 vede k nesprávnému výsledku.
Celkově lze říci, že odečítání data narození od aktuálního data funguje skvěle v běžném životě, ale v Excelu není ideálním přístupem. Dále se v tomto návodu seznámíte s několika speciálními funkcemi, které bezchybně počítají věk bez ohledu na rok.
Výpočet věku z data narození pomocí funkce YEARFRAC
Spolehlivějším způsobem převodu data narození na věk v aplikaci Excel je použití funkce YEARFRAC, která vrací zlomek roku, tj. počet celých dnů mezi dvěma daty.
Syntaxe funkce YEARFRAC je následující:
YEARFRAC(start_date, end_date, [základ])První dva argumenty jsou zřejmé a nevyžadují další vysvětlení. Základna je nepovinný argument, který určuje základ pro počítání dnů, který se má použít.
Chcete-li vytvořit dokonale pravdivý vzorec pro výpočet věku, zadejte funkci YEARFRAC následující hodnoty:
- Start_date - datum narození.
- End_date - Funkce TODAY() vrací dnešní datum.
- Základna - základ použití 1 který Excelu řekne, aby vydělil skutečný počet dní v měsíci skutečným počtem dní v roce.
Vzhledem k výše uvedenému je vzorec aplikace Excel pro výpočet věku z data narození následující:
YEARFRAC( datum narození , TODAY(), 1)Za předpokladu, že datum narození je v buňce B2, má vzorec následující tvar:
=ROKFRAC(B2, TODAY(), 1)
Stejně jako v předchozím příkladu je výsledkem funkce YEARFRAC také desetinné číslo. Chcete-li to napravit, použijte funkci ROUNDDOWN s 0 v posledním argumentu, protože nechcete žádná desetinná místa.
Zde je vylepšený vzorec YEARFRAC pro výpočet věku v aplikaci Excel:
=ZAOKROUHLENÍ(ROKFRAC(B2, TODAY(), 1), 0)
Výpočet věku v aplikaci Excel pomocí funkce DATEDIF
Dalším způsobem převodu data narození na věk v aplikaci Excel je použití funkce DATEDIF:
DATEDIF(datum_začátku, datum_konce, jednotka)Tato funkce může vrátit rozdíl mezi dvěma daty v různých časových jednotkách, jako jsou roky, měsíce a dny, v závislosti na hodnotě, kterou zadáte do pole. jednotka argument:
- Y - vrací počet celé roky mezi počátečním a konečným datem.
- M - vrací počet celé měsíce mezi daty.
- D - vrací počet dny mezi těmito dvěma daty.
- YM - návraty měsíce , bez ohledu na dny a roky.
- MD - vrací rozdíl v dny , bez ohledu na měsíce a roky.
- YD - vrací rozdíl v dny , přičemž ignoruje roky.
Protože se snažíme vypočítat věk v let , používáme jednotku "y":
V tomto příkladu je datum narození v buňce B2 a na tuto buňku se odkazujete ve vzorci pro věk:
=DATEDIF(B2, TODAY(), "y")
V tomto případě není potřeba žádná další zaokrouhlovací funkce, protože vzorec DATEDIF s jednotkou "y" vypočítá počet celých let:
Jak získat věk z narozenin v letech, měsících a dnech
Jak jste se právě přesvědčili, výpočet věku jako počtu celých let, kterých se daná osoba dožila, je snadný, ale ne vždy dostačující. Pokud chcete zjistit přesný věk, tj. kolik let, měsíců a dní dělí někoho od data narození do aktuálního data, napište 3 různé funkce DATEDIF:
- Chcete-li získat počet let:
=DATEDIF(B2, TODAY(), "Y")
- Chcete-li získat počet měsíců:
=DATEDIF(B2, TODAY(), "YM")
- Chcete-li získat počet dní:
=DATEDIF(B2,TODAY(), "MD")
Kde B2 je datum narození.
A pak výše uvedené funkce spojte do jednoho vzorce, například takto:
=DATEDIF(B2,TODAY(), "Y") & DATEDIF(B2,TODAY(), "YM") & DATEDIF(B2,TODAY(), "MD")
Výše uvedený vzorec vrátí 3 čísla (roky, měsíce a dny) spojená do jednoho textového řetězce, jak je znázorněno na obrázku níže:
Nedává to moc smysl, že? Aby byly výsledky smysluplnější, oddělte čísla čárkami a definujte, co která hodnota znamená:
=DATEDIF(B2,TODAY(), "Y") & " Roky, " & DATEDIF(B2,TODAY(), "YM") & " Měsíce, " & DATEDIF(B2,TODAY(), "MD") & " Dny"
Výsledek nyní vypadá mnohem lépe:
Vzorec funguje skvěle, ale můžete ho ještě vylepšit skrytím nulových hodnot. Za tímto účelem přidejte 3 příkazy IF, které kontrolují 0, jeden na každý DATEDIF:
=IF(DATEDIF(B2, TODAY(), "y")=0,"",DATEDIF(B2, TODAY(), "y")&" roky, ")& IF(DATEDIF(B2, TODAY(), "ym")=0,"",DATEDIF(B2, TODAY(), "ym")&" měsíce, ")& IF(DATEDIF(B2, TODAY(), "md")=0,"",DATEDIF(B2, TODAY(), "md")&" dny").
Následující snímek obrazovky ukazuje konečný vzorec pro výpočet věku v aplikaci Excel v akci - vrací věk v letech, měsících a dnech a zobrazuje pouze věk v letech, měsících a dnech. nenulové hodnoty:
Tip. Pokud hledáte vzorec aplikace Excel pro výpočet věku v. roky a měsíce , vezměte výše uvedený vzorec a odstraňte poslední blok IF(DATEDIF()), který počítá dny.
Specifické vzorce pro výpočet věku v aplikaci Excel
Výše uvedené obecné vzorce pro výpočet věku fungují ve většině případů skvěle. V některých situacích však můžete potřebovat něco velmi specifického. Samozřejmě není možné pokrýt každý a všechny scénáře, ale následující příklady vám poskytnou několik nápadů, jak můžete vzorec pro výpočet věku upravit v závislosti na konkrétním úkolu.
Jak vypočítat věk k určitému datu v aplikaci Excel
Pokud chcete zjistit něčí věk k určitému datu, použijte výše uvedený vzorec DATEDIF age, ale ve 2. argumentu nahraďte funkci TODAY() konkrétním datem.
Za předpokladu, že datum narození je v B1, následující vzorec vrátí věk k 1. lednu 2020:
=DATEDIF(B1, "1/1/2020", "Y") & " Roky, " & DATEDIF(B1, "1/1/2020", "YM") & " Měsíce, " & DATEDIF(B1, "1/1/2020", "MD") & " Dny"
Aby byl vzorec pro výpočet věku flexibilnější, můžete zadat datum do některé buňky a na tuto buňku se ve vzorci odkázat:
=DATEDIF(B1, B2, "Y") & " Roky, "& DATEDIF(B1,B2, "YM") & " Měsíce, "&DATEDIF(B1,B2, "MD") & " Dny"
Kde B1 je datum narození a B2 je datum, ke kterému chcete vypočítat věk.
Výpočet věku v určitém roce
Tento vzorec se hodí v situacích, kdy není definováno celé datum, ke kterému se má výpočet provést, a je znám pouze rok.
Řekněme, že pracujete s lékařskou databází a vaším cílem je zjistit věk pacientů v době, kdy podstoupili poslední kompletní lékařskou prohlídku.
Za předpokladu, že data narození jsou ve sloupci B počínaje řádkem 3 a rok poslední lékařské prohlídky je ve sloupci C, vzorec pro výpočet věku je následující:
=DATEDIF(B3,DATE(C3, 1, 1), "y")
Protože přesné datum lékařského vyšetření není definováno, použijete funkci DATE s libovolným argumentem data a měsíce, např. DATE(C3, 1, 1).
Funkce DATE extrahuje rok z buňky B3, vytvoří kompletní datum pomocí zadaných čísel měsíce a dne (v tomto příkladu 1. ledna) a předá toto datum funkci DATEDIF. Výsledkem je věk pacienta k 1. lednu daného roku:
Zjistěte datum, kdy osoba dosáhne věku N let.
Předpokládejme, že se váš přítel narodil 8. března 1978. Jak zjistíte, v který den dovrší 50 let? Obvykle byste k datu narození dané osoby jednoduše přičetli 50 let. V aplikaci Excel provedete totéž pomocí funkce DATE:
=DATE(ROK(B2) + 50, MĚSÍC(B2), DEN(B2))
Kde B2 je datum narození.
Místo toho, abyste počet let ve vzorci zadávali natvrdo, můžete odkázat na určitou buňku, do které mohou uživatelé zadat libovolný počet let (F1 na obrázku níže):
Výpočet věku ze dne, měsíce a roku v různých buňkách
Pokud je datum narození rozděleno do 3 různých buněk (např. rok je v B3, měsíc v C3 a den v D3), můžete tímto způsobem vypočítat věk:
- Získejte datum narození pomocí funkcí DATE a DATEVALUE:
DATE(B3,MONTH(DATEVALUE(C3& "1")),D3)
- Vložením výše uvedeného vzorce do DATEDIF vypočtete věk z data narození v letech, měsících a dnech:
=DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3), TODAY(), "y") & " Roky, "& DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3),TODAY(), "ym") & " Měsíce, "& DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3), TODAY(), "md") & " Dny"
Další příklady výpočtu počtu dní před/po datu naleznete v části Jak vypočítat dny od nebo do data v aplikaci Excel.
Kalkulačka věku v aplikaci Excel
Pokud chcete mít v aplikaci Excel vlastní kalkulačku věku, můžete si ji vytvořit pomocí několika různých vzorců DATEDIF, které jsou vysvětleny níže. Pokud nechcete znovu vynalézat kolo, můžete použít kalkulačku věku vytvořenou našimi odborníky na aplikaci Excel.
Jak vytvořit kalkulačku věku v aplikaci Excel
Nyní, když víte, jak vytvořit vzorec pro výpočet věku v aplikaci Excel, můžete vytvořit vlastní kalkulačku věku, například tuto:
Poznámka: Chcete-li zobrazit vložený sešit, povolte prosím marketingové soubory cookie.
To, co vidíte výše, je vložený list aplikace Excel Online, takže neváhejte zadat své datum narození do příslušné buňky a za chvíli získáte svůj věk.
Kalkulačka používá následující vzorce pro výpočet věku na základě data narození v buňce A3 a dnešního data.
- Vzorec v B5 vypočítá věk v letech, měsících a dnech:
=DATEDIF(B2,TODAY(), "Y") & " Roky, " & DATEDIF(B2,TODAY(), "YM") & " Měsíce, " & DATEDIF(B2,TODAY(), "MD") & " Dny"
- Vzorec v B6 počítá věk v měsících:
=DATEDIF($B$3,TODAY(), "m")
- Vzorec v B7 vypočítá věk ve dnech:
=DATEDIF($B$3,TODAY(), "d")
Pokud máte zkušenosti s ovládacími prvky formuláře aplikace Excel, můžete přidat možnost výpočtu věku k určitému datu, jak je znázorněno na následujícím snímku obrazovky:
Za tímto účelem přidejte několik tlačítek možností ( Karta Vývojář > Vložte > Ovládací prvky formuláře > Tlačítko volby ) a propojte je s nějakou buňkou. A pak napište vzorec IF/DATEDIF, abyste získali věk buď k dnešnímu datu, nebo k datu zadanému uživatelem.
Vzorec pracuje s následující logikou:
- Pokud Dnešní datum je zaškrtnuto políčko, v propojené buňce (v tomto příkladu I5) se objeví hodnota 1 a vzorec pro výpočet věku se vypočítá na základě dnešního data:
IF($I$5=1, DATEDIF($B$3,TODAY(), "Y") & " Roky, " & DATEDIF($B$3,TODAY(), "YM") & " Měsíce, " & DATEDIF($B$3, TODAY(), "MD") & " Dny")
- Pokud Konkrétní datum je vybráno tlačítko volby A v buňce B7 je zadáno datum, věk se vypočítá k zadanému datu:
IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Years, " & DATEDIF($B$3, $B$7, "YM") & " Months, " & DATEDIF($B$3, $B$7, "MD") & " Days", ""))
Nakonec do sebe výše uvedené funkce vložte a získáte kompletní vzorec pro výpočet věku (v B9):
=IF($I$5=1, DATEDIF($B$3, TODAY(), "Y") & " Roky, " & DATEDIF($B$3, TODAY(), "YM") & " Měsíce, " & DATEDIF($B$3, TODAY(), "MD") & " Dny", IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Roky, " & DATEDIF($B$3, $B$7, "YM") & " Měsíce, " & DATEDIF($B$3, $B$7, "MD") & " Dny", ""))
Vzorce v B10 a B11 pracují se stejnou logikou. Jsou ovšem mnohem jednodušší, protože obsahují pouze jednu funkci DATEDIF, která vrací věk jako počet celých měsíců, resp. dnů.
Chcete-li se dozvědět podrobnosti, mohu vás vyzvat, abyste si stáhli tuto kalkulačku Excelu a prozkoumali vzorce v buňkách B9:B11.
Stáhnout kalkulačku věku pro Excel
Kalkulačka věku připravená k použití pro aplikaci Excel
Uživatelé naší sady Ultimate Suite se nemusí obtěžovat s vytvářením vlastní kalkulačky věku v aplikaci Excel - stačí jen pár kliknutí:
- Vyberte buňku, do které chcete vložit vzorec pro věk, přejděte na stránku Nástroje Ablebits karta> Datum & Čas a klikněte na Datum & amp; Průvodce časem tlačítko.
- Spustí se Průvodce datem & časem a přejdete přímo do aplikace. Věk tab.
- Na Věk na kartě je třeba zadat 3 věci:
- Údaje o narození jako odkaz na buňku nebo datum ve formátu mm/dd/rrrr.
- Věk v dnešní datum nebo konkrétní datum .
- Zvolte, zda se má věk počítat ve dnech, měsících, letech nebo přesně.
- Klikněte na Vložte vzorec tlačítko.
Hotovo!
Vzorec se na okamžik vloží do vybrané buňky a dvojklikem na úchyt výplně jej zkopírujete dolů do sloupce.
Jak jste si možná všimli, vzorec vytvořený naší kalkulačkou věku v Excelu je složitější než ty, které jsme dosud probírali, ale vyhovuje jednotnému i množnému číslu jednotek času, jako jsou "den" a "dny".
Pokud se chcete zbavit nulových jednotek, jako je "0 dní", vyberte možnost Nepoužívejte zobrazit nulové jednotky zaškrtávacího políčka:
Pokud jste zvědaví, zda si tuto věkovou kalkulačku vyzkoušíte a zda objevíte dalších 60 časově úsporných doplňků pro Excel, můžete si na konci tohoto příspěvku stáhnout zkušební verzi naší sady Ultimate Suite.
Jak zvýraznit určitý věk (pod nebo nad určitý věk)
V některých situacích můžete potřebovat nejen vypočítat věk v aplikaci Excel, ale také zvýraznit buňky, které obsahují věk nižší nebo vyšší než určitý věk.
Pokud vzorec pro výpočet věku vrací počet celých let, můžete vytvořit běžné pravidlo podmíněného formátování založené na jednoduchém vzorci, jako jsou tyto:
- Zvýraznění věku 18 let nebo více: =$C2>=18
- Zvýraznění věku do 18 let: =$C2<18
Kde C2 je nejvyšší buňka ve sloupci Věk (bez záhlaví sloupce).
Ale co když váš vzorec zobrazuje věk v letech a měsících nebo v letech, měsících a dnech? V takovém případě budete muset vytvořit pravidlo založené na vzorci DATEDIF, který vypočítá věk z data narození v letech.
Předpokládejme, že data narození jsou ve sloupci B počínaje řádkem 2, vzorce jsou následující:
- Zvýraznění věku pod 18 (žlutá):
=DATEDIF($B2, TODAY(), "Y")<18
- Zvýraznění věku mezi 18 a 65 (zelená):
=AND(DATEDIF($B2, TODAY(), "Y")>=18, DATEDIF($B2, TODAY(), "Y")<=65)
- Zvýraznění věku nad 65 (modrá):
=DATEDIF($B2, TODAY(), "Y")>65
Chcete-li vytvořit pravidla na základě výše uvedených vzorců, vyberte buňky nebo celé řádky, které chcete zvýraznit, přejděte na stránku Home karta> Styly a klikněte na tlačítko Podmíněné formátování > Nové pravidlo... > Pomocí vzorce určete, které buňky se mají formátovat .
Podrobný postup najdete zde: Jak vytvořit pravidlo podmíněného formátování na základě vzorce.
Takto se počítá věk v Excelu. Doufám, že pro vás bylo snadné naučit se vzorce a vyzkoušíte je ve svých pracovních listech. Děkuji za přečtení a doufám, že se uvidíme na našem blogu příští týden!
Dostupné soubory ke stažení
Příklady výpočtu věku v aplikaci Excel (.xlsx soubor)
Ultimate Suite 14denní plně funkční verze (.exe soubor)