Nejste přihlášen/a.

Přihlásit se do poradny

 

Excel - vzorec na výpočet věku

Od: emiln odpovědí: 7 změna:

Dobrý den Fši!

Mám v Excelu občany obce takto"

sloupec A sloupec B sloupecC

NOVÁK JOSEF - Těšovice čp. 1 - 1.12.1942

Ve sloupci C je datum narození.

Otázka: jaký vzorec dát do sloupce D, aby se v něm zobrazoval současný věk občana? Dcera vygooglila vzorec

=(ROK(NYNÍ())-ROK(C1))

ale to nefunguje! Anebo to tam blbě dávám, to je možné, jsem jen povrchně v PC zběhlý, pokročilého věku a dle mých dětí poněkud mdlého rozumu...

Můžete někdo pomoci? Děkuji předem MOC!

EN., Prachaticko.

 

 

7 odpovědí na otázku
Řazeno dle hodnocení

 

 

figurek*
hodnocení

3x

Nejdříve se naučte formátovat buňku jako správně zobrazený datum a pak teprve přejděte ke vzorečkům. Vy to berete z opačné strany. Vašim stylem se k nějakému konci nedohrabete nikdy.

Narazíte na dva problémy, které se těžko vysvětlují.

1. problém - datum narození musíte zadat ve tvaru, který Excel dokáže rozluštit. To znamená buňku s datem musíte naformátovat jako datum a vybrat správný tvar zobrazení. Pak do ní to datum zadejte přesně požadovaným způsobem. Já mám americký Excel, takže ho musím zadávat po americku, 12 leden 1942 zadám jako 1/12/1942. Když odkliknu Enter, v buňce se objeví správné české zobrazení.

2. problém - věřte nevěřte, excelácké datum je normální pořadové číslo, které se každý den zvyšuje o jedničku. Proto se s ním dá zacházet jako s každým číslem. Věk spočtete tak, že vezmete dnešní datum a od něj odpočítáte zadané datum narození a excelu řeknete, že chcete vidět jen roky. Tuto buňku musíte naformátovat jako číslo, bez desetinných míst.

Ve vašem vzorečku byste asi měl použít funkci ROK místo YEAR a DNES místo TODAY. A ještě nakonec by to chtělo vzoreček dodělat, protože ten můj YEAR(TODAY())-YEAR(C3) počítá pouze rozdíl roků. Dny a měsíce nebere v potas.

Excel - vzorec na výpočet věku
praivo*

Pokud zadá datum jako dd.mm.rrrr, tak Excel formát změní automaticky, nemusí to dělat ručně. Co naopak sám neudělá (alespoň 365) je zformátování výsledku do obecného formátu (naformátuje to jako datum a výsledkem je nesmysl).

Pokud to chceš rovnou počítat, tak nemusíš vše převádět na roky, stačí =ROUNDDOWN(((DNES()-C4)/365,25);0) (ROUNDDOWN je i pro českou verzi).


doplněno 10.01.18 21:30:

ROUNDDOWN je tam proto, že v zadání je počítání posledního dovršeného roku. Samotný rozdíl, byť ze dnů, zobrazí výsledek buď jako desetinné číslo, nebo zaokrouhlený běžným způsobem (od 0,5 nahoru), pro zadaný výsledek je tedy nutné zakrouhlit dolů.

 

hodnocení

2x
avatar jenyk

Excel nepoužívám, ale řekl bych, že je chyba v označení buňky ze který to má počítat. Tam nemůže být C1, nýbrž číslo řádku, na kterým je buňka umístěná. Tedy C2 až kolik máš řádků.

 

praivo*
hodnocení

1x

=DATEDIF(C1;DNES();"y")

Argumentem lze výsledek zobrazit i jako měsíce ("m") nebo dny ("d").

support.office.com/...

emiln
hodnocení

Dobrý den, vážený pane "praivo"!

Mylně předpokládáte, že radíte někomu, kdo ví, co je "argument"...! Vím, že "...někdy nejlepším bývá i facka...!, ale to jistě není tento případ! (pokus o vtip).

Pokud Vás můžu ještě okrást o trochu času a vědomosti, pošlete mi, prosím, konkrétní tvar vzorce pro řádek 2, kde:

v A2 je příjmení a jméno ve tvaru Novák Josef

v B2 je trvalé bydliště ve tvaru Praha čp. 1

v C2 je den narození ve tvaru 1.1.1950.

V D2 bych potřeboval věk, domnívám se, že stačí dovršený celý rok. Na vysvětlenou: ulehčilo by to práci děvčatům ze Sboru pro občanské záležitosti, nemusely by přepočítávat, zda mají či nemají jít přát tomu či onomu občanu staršímu 60i let k (např. kulatému) výročí.

Pane "praivo", MOC Vám děkuji.

Emil Nachlinger.

praivo*

Argument je hodnota použitá při volání dané funkce, tj. instrukce, jakým způsobem se má výpočet provést. Zde jsou argumenty dvě data (buňka a aktuální datum) a požadavek na formátování výsledky ("y" = year = rok).

DATEDIF (případně níže uvedená alternativa =ROUNDDOWN(((DNES()-C4)/365,25);0) nepotřebuje nic jiného, než souřadnice buňky s datem, v tomto případě tedy C2, resp. Cx (předpokládám, že se jedná o více podobných řádků). Po zadání pak stačí jen kurzorem vzít pravý dolní rok buňky a roztáhnout ji na všechny použité řádky, případně ještě uzamknout pozici sloupce použitím $C2 - tím se zajistí, že při případném přetažení buňky do jiného sloupce bude Excel brát to datum stále ze sloupce C místo odpovídající relativní polohy (např. pokud je teď funkce v D a zdrojová buňka v C, tak při přetažení vzorce do F by Excel normálně použil opět buňku o jednu pozici vlevo, tj. v E, kde nic není).

A ještě jeden tip: Klik na Podmíněné formátování --> Pravidla formátování buněk --> Větší než... --> zadat 60 a zelené označení. Všechny výsledky nad dovršených 60 let se pak obarví zeleně a nebude nutné je hledat ručně ;)

 

hodnocení

0x

Našel jsem dva odkazy, kde je to pěkně popsané a i s měsíci, snad to pomůže:

lorenc.info/...

office.lasakovi.com/...

 

 


 

 

 

Přihlásit se k odběru odpovědí z této otázky:

Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.

Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.

Copyright © 2004-2025 Poradna Poradte.cz. Všechna práva vyhrazena. Prohlášení o ochraně osobních údajů. | [tmavý motiv]