Excel képlet: Születésnaptól kap életkor -

Tartalomjegyzék

Általános képlet

=DATEDIF(birthdate,TODAY(),"y")

Összegzés

Az életkor születési dátum alapján történő kiszámításához használhatja a DATEDIF függvényt a TODAY funkcióval együtt. A bemutatott példában az E5 cellában levő képlet:

=DATEDIF(D5,TODAY(),"y")

Mivel a TODAY mindig az aktuális dátumot adja vissza, a képlet a jövőben is folytatja a helyes életkor kiszámítását.

Magyarázat

A DATEDIF függvény (Dátum + Dif) kissé rendellenesség az Excelben. Az eredetileg a Lotus 1-2-3-ból származó kompatibilitási függvény az Excel nem segít argumentumokat megadni a függvény megadásakor. A DATEDIF azonban az Excel minden modern verziójában működik, és hasznos funkció két dátum közötti év, hónap és nap közötti intervallum kiszámításához.

A bemutatott példában a cél az életkor számítása években. Az E5 képlete a következő:

=DATEDIF(D5,TODAY(),"y")

A DATEDIF első két argumentuma a kezdő_dátum és a vég_dátum. A kezdő dátum a példa D5 cellájából származik (2001. május 15.). A befejezés dátumát a TODAY függvénnyel generálják. A TODAY mindig az aktuális dátumot adja vissza az Excelben. Jelen íráskor a jelenlegi dátum 2020. november 24.. A DATEDIF utolsó argumentuma az időegységet adja meg. A DATEDIF függvény itt több lehetőséget támogat, de ebben a példában a cél az egész év kora, ezért az "y" -et használjuk a teljes évek megadására.

Ezen a ponton átírhatjuk a képletet az alábbiak szerint:

=DATEDIF("15-May-2001","24-Nov-2020", "y")

Mivel az Excel dátumok valójában sorozatszámok, a nyers értékek a következők:

=DATEDIF(37026,44159,"y")

Ezekkel a bemenetekkel a DATEDIF 19-et ad vissza végeredményként.

Életkor meghatározott napon

Egy adott dátum korának kiszámításához cserélje le a TODAY függvényt a céldátumra. Egy adott dátum képletbe történő kódolásának egyszerű és biztonságos módja a DÁTUM funkció használata. Például az életkor 2021. január 1-jei számításához az alábbi képletet használhatja:

=DATEDIF(D5,DATE(2022,1,1),"y") // returns 20

Ez a képlet Michael Chang életkorát 2022. január 1-jén adja vissza, ami 20 év.

Felnőtt vagy kiskorú

A születési dátum ellenőrzéséhez és a "Kiskorú" vagy "Felnőtt" visszaadásához beírhatja a képletet az IF függvénybe így:

=IF(DATEDIF(D5,TODAY(),"y")<18,"Minor","Adult")

A fenti képlet a fészkelés példája. Cserélje ki 18-at a megfelelő életkorra.

Életkor években, hónapokban és napokban

Az életkor években, hónapokban és napokban történő kiszámításához használja a DATEDIF három ilyen példányát:

=DATEDIF(A1,TODAY(),"y")&"y "&DATEDIF(A1,TODAY(),"ym")&"m "&DATEDIF(A1,TODAY(),"md")&"d"

A DATEDIF első példánya éveket, a második példány hónapokat, a harmadik pedig napokat ad vissza. Ez az összefűzés példája, és az eredmény egy ilyen szöveges karakterlánc:

19y 6m 9d

Megjegyzés: a kezdő és a befejező dátum ugyanaz marad mindhárom DATEDIF-ben; csak az egység változik.

YEARFRAC INT

Egy másik lehetőség az életkor születési dátumtól való számításához a YEARFRAC függvényt használja az INT függvénnyel együtt egy ilyen képletben:

=INT(YEARFRAC(D5,TODAY()))

A YEARFRAC egy tizedes számot számol, amely az év töredékét jelöli két dátum között. Az év töredékének tizedesértékként történő kiszámításához az Excel két dátum közötti napokat használ. A fentiekhez hasonlóan a születési dátumot kezdő_dátumként adjuk meg a D5 cellából, a mai dátumot pedig végdátumként adjuk meg, a TODAY függvény jóvoltából.

A jelenlegi dátum: 2020. november 24., a YEARFRAC eredménye Michael Chang számára:

19.5290896646133

Ezután az INT függvény átveszi és lefelé kerekíti azt a számot az egész számra, amely a 19-es szám.

=INT(19.5290896646133) // returns 19

Ez a képlet teljesen logikusnak tűnik, és a legtöbb esetben jól működik. A YEARFRAC azonban visszaadhat olyan számot, amely nem megfelelő az évforduló dátumain (születésnapján). Nem tudom pontosan, miért történik ez, de összefügg azzal, hogy a YEARFRAC hogyan használja a napokat a tört évek meghatározásához, amelyet az alap érv vezérel. Például:

=YEARFRAC(DATE(1960,6,30),DATE(1962,6,30),1) // 1.998, should be 2 =YEARFRAC(DATE(1960,3,3),DATE(1964,3,3),1) // 3.998, should be 4

A lényeg az, hogy a dátum DATEDIF képlete biztonságosabb és könnyebb lehetőség, ha a cél az életkor egész években történő jelentése.

érdekes cikkek...