Kaip apskaičiuoti amžių "Excel" programoje iš gimtadienio

  • Pasidalinti
Michael Brown

Šiame vadovėlyje pateikiami įvairūs būdai, kaip "Excel" programoje gauti amžių iš gimtadienio. Išmoksite keletą formulių, kaip apskaičiuoti amžių kaip pilnų metų skaičių, gauti tikslų amžių metais, mėnesiais ir dienomis šios dienos arba tam tikros datos metu.

Specialios funkcijos amžiui apskaičiuoti "Excel" programoje nėra, tačiau yra keletas skirtingų būdų, kaip konvertuoti gimimo datą į amžių. Šioje pamokoje bus paaiškinti kiekvieno būdo privalumai ir trūkumai, parodyta, kaip "Excel" programoje sukurti tobulą amžiaus apskaičiavimo formulę ir ją pritaikyti sprendžiant tam tikrus konkrečius uždavinius.

    Kaip apskaičiuoti amžių pagal gimimo datą programoje "Excel

    Kasdieniame gyvenime klausimas " Kiek jums metų? " paprastai reiškia atsakymą, nurodantį, kiek metų gyvenote. "Microsoft Excel" programoje galite sudaryti formulę, kad apskaičiuotumėte tikslų amžių mėnesiais, dienomis, valandomis ir net minutėmis. Tačiau būkime tradiciniai ir pirmiausia sužinokime, kaip apskaičiuoti amžių iš DOB metais.

    Pagrindinė "Excel" formulė amžiui metais

    Kaip paprastai nustatote kieno nors amžių? Paprasčiausiai atimdami gimimo datą iš dabartinės datos. Šią įprastinę amžiaus formulę galima naudoti ir "Excel" programoje.

    Darant prielaidą, kad gimimo data yra ląstelėje B2, formulė amžiui metais apskaičiuoti yra tokia:

    =(ŠIANDIEN()-B2)/365

    Pirmoje formulės dalyje (TODAY()-B2) grąžinamas skirtumas tarp dabartinės datos ir gimimo datos dienomis, tada šį skaičių dalijate iš 365 ir gaunate metų skaičių.

    Formulė yra akivaizdi ir lengvai įsimenama, tačiau yra nedidelė problema. Daugeliu atvejų ji grąžina dešimtainį skaičių, kaip parodyta toliau pateiktoje ekrano nuotraukoje.

    Norėdami parodyti pilnų metų skaičių, naudokite INT funkciją, kad suapvalintumėte dešimtainį skaičių iki artimiausio sveikojo skaičiaus:

    =INT((ŠIANDIEN()-B2)/365)

    Trūkumai: Naudojant šią amžiaus formulę "Excel" programoje, gaunami gana tikslūs rezultatai, tačiau jie nėra nepriekaištingi. Dalijimas iš vidutinio metų dienų skaičiaus dažniausiai veikia gerai, tačiau kartais amžius nustatomas neteisingai. Pavyzdžiui, jei asmuo gimė vasario 29 d., o šiandien yra vasario 28 d., pagal šią formulę jis bus viena diena vyresnis.

    Kaip alternatyvą galite dalyti ne iš 365, o iš 365,25, nes kas ketvirti metai turi 366 dienas. Tačiau šis metodas taip pat nėra tobulas. Pavyzdžiui, jei skaičiuojate vaiko, kuris dar nėra išgyvenęs keliamųjų metų, amžių, dalydami iš 365,25 gausite neteisingą rezultatą.

    Apskritai, gimimo datos atimtis iš dabartinės datos puikiai tinka įprastame gyvenime, bet nėra idealus metodas "Excel" programoje. Toliau šioje pamokoje sužinosite keletą specialių funkcijų, kurios nepriekaištingai apskaičiuoja amžių nepriklausomai nuo metų.

    Apskaičiuokite amžių pagal gimimo datą naudodami funkciją YEARFRAC

    Patikimesnis būdas konvertuoti DOB į amžių "Excel" programoje yra naudoti funkciją YEARFRAC, kuri grąžina metų dalį, t. y. sveikų dienų skaičių tarp dviejų datų.

    Funkcijos YEARFRAC sintaksė yra tokia:

    YEARFRAC(pradžios_data, pabaigos_data, [pagrindas])

    Pirmieji du argumentai yra akivaizdūs ir vargu ar reikalauja papildomo paaiškinimo. Pagrindas yra neprivalomas argumentas, apibrėžiantis naudojamą dienų skaičiavimo pagrindą.

    Norėdami sukurti visiškai teisingą amžiaus formulę, funkcijai YEARFRAC pateikite šias vertes:

    • Start_date - gimimo data.
    • End_date - TODAY() funkcija, kad būtų grąžinta šiandienos data.
    • Pagrindas - naudojimo pagrindas 1 kuri nurodo "Excel" padalyti faktinį dienų per mėnesį skaičių iš faktinio dienų per metus skaičiaus.

    Atsižvelgiant į tai, kas išdėstyta pirmiau, "Excel" formulė amžiui pagal gimimo datą apskaičiuoti yra tokia:

    METŲ FRAC( gimimo data , TODAY(), 1)

    Darant prielaidą, kad gimimo data yra ląstelėje B2, formulė įgauna tokią formą:

    =YEARFRAC(B2, TODAY(), 1)

    Kaip ir ankstesniame pavyzdyje, funkcijos YEARFRAC rezultatas taip pat yra dešimtainis skaičius. Norėdami tai ištaisyti, naudokite funkciją ROUNDDOWN, kurios paskutinis argumentas yra 0, nes nenorite, kad dešimtainiai skaičiai būtų įrašyti po kablelio.

    Štai patobulinta formulė YEARFRAC, skirta amžiui apskaičiuoti "Excel" programoje:

    =APVALINIMAS(METAIFRAC(B2, TODAY(), 1), 0)

    Amžiaus skaičiavimas "Excel" naudojant DATEDIF

    Dar vienas būdas konvertuoti gimimo datą į amžių "Excel" programoje - naudoti funkciją DATEDIF:

    DATEDIF(pradžios_data, pabaigos_data, vienetas)

    Ši funkcija gali grąžinti dviejų datų skirtumą įvairiais laiko vienetais, pvz., metais, mėnesiais ir dienomis, priklausomai nuo reikšmės, kurią nurodote laukelyje vienetas argumentas:

    • Y - grąžinamas skaičius ištisus metus tarp pradžios ir pabaigos datų.
    • M - grąžinamas skaičius visi mėnesiai tarp datų.
    • D - grąžinamas skaičius dienos tarp šių dviejų datų.
    • YM - grįžta mėnesių , neatsižvelgiant į dienas ir metus.
    • MD - grąžina skirtumą tarp dienos nekreipiant dėmesio į mėnesius ir metus.
    • YD - grąžina skirtumą tarp dienos , ignoruojant metus.

    Kadangi siekiame apskaičiuoti amžius metų , naudojame "y" vienetą:

    DATEDIF( gimimo data , TODAY(), "y")

    Šiame pavyzdyje DOB yra ląstelėje B2, o jūs pateikiate nuorodą į šią ląstelę savo amžiaus formulėje:

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

    Šiuo atveju nereikia jokios papildomos apvalinimo funkcijos, nes DATEDIF formulė su "y" vienetu apskaičiuoja pilnų metų skaičių:

    Kaip gauti amžių iš gimtadienio metais, mėnesiais ir dienomis

    Kaip ką tik matėte, apskaičiuoti amžių kaip pilnų metų, kuriuos asmuo pragyveno, skaičių yra paprasta, tačiau to ne visada pakanka. Jei norite sužinoti tikslų amžių, t. y. kiek metų, mėnesių ir dienų yra nuo asmens gimimo datos iki dabartinės datos, parašykite 3 skirtingas DATEDIF funkcijas:

    1. Norėdami sužinoti metų skaičių: =DATEDIF(B2, TODAY(), "Y")
    2. Norėdami sužinoti mėnesių skaičių: =DATEDIF(B2, TODAY(), "YM")
    3. Norėdami sužinoti dienų skaičių: =DATEDIF(B2,TODAY(), "MD")

    kur B2 yra gimimo data.

    Tada sujungkite pirmiau minėtas funkcijas į vieną formulę, pvz., taip:

    =DATEDIF(B2,TODAY(), "Y") & DATEDIF(B2,TODAY(), "YM") & DATEDIF(B2,TODAY(), "MD")

    Pagal pirmiau pateiktą formulę grąžinami 3 skaičiai (metai, mėnesiai ir dienos), sujungti į vieną teksto eilutę, kaip parodyta toliau pateiktoje ekrano kopijoje:

    Rezultatai nėra labai prasmingi, ar ne? Kad rezultatai būtų prasmingesni, atskirkite skaičius kableliais ir apibrėžkite, ką reiškia kiekviena reikšmė:

    =DATEDIF(B2,TODAY(), "Y") & " Metai, " & DATEDIF(B2,TODAY(), "YM") & " Mėnesiai, " & DATEDIF(B2,TODAY(), "MD") & " Dienos"

    Dabar rezultatas atrodo daug geriau:

    Formulė veikia puikiai, tačiau galite ją dar labiau patobulinti paslėpdami nulines reikšmes. Šiuo tikslu pridėkite 3 IF teiginius, kurie tikrina, ar nėra 0, po vieną kiekviename DATEDIF:

    =IF(DATEDIF(B2, TODAY(), "y")=0,"",DATEDIF(B2, TODAY(), "y")&" metai, ")& IF(DATEDIF(B2, TODAY(), "ym")=0,"",DATEDIF(B2, TODAY(), "ym")&" mėnesiai, ")& IF(DATEDIF(B2, TODAY(), "md")=0,"",DATEDIF(B2, TODAY(), "md")&" dienos")

    Toliau pateiktoje ekrano nuotraukoje parodyta galutinė "Excel" amžiaus formulė - ji grąžina amžių metais, mėnesiais ir dienomis, rodydama tik nenulinis vertės:

    Patarimas. Jei ieškote "Excel" formulės amžiui apskaičiuoti metai ir mėnesiai , paimkite pirmiau pateiktą formulę ir pašalinkite paskutinį IF(DATEDIF()) bloką, kuriame skaičiuojamos dienos.

    Konkrečios formulės amžiui apskaičiuoti programoje "Excel

    Pirmiau aptartos bendrosios amžiaus apskaičiavimo formulės daugeliu atvejų puikiai tinka. Tačiau kai kuriais atvejais gali prireikti kažko labai konkretaus. Žinoma, neįmanoma aprėpti visų ir kiekvieno scenarijaus, tačiau toliau pateikti pavyzdžiai suteiks jums keletą idėjų, kaip galite pakoreguoti amžiaus formulę, atsižvelgdami į konkrečią užduotį.

    Kaip apskaičiuoti amžių konkrečią datą programoje "Excel

    Jei norite sužinoti kieno nors amžių tam tikrą datą, naudokite pirmiau aptartą amžiaus formulę DATEDIF, tačiau 2 argumente funkciją TODAY() pakeiskite konkrečia data.

    Darant prielaidą, kad gimimo data yra B1, pagal šią formulę bus gautas amžius 2020 m. sausio 1 d:

    =DATEDIF(B1, "1/1/2020", "Y") & " Metai, " & DATEDIF(B1, "1/1/2020", "YM") & " Mėnesiai, " & DATEDIF(B1, "1/1/2020", "MD") & " Dienos"

    Kad amžiaus formulė būtų lankstesnė, galite įvesti datą į kurį nors langelį ir pateikti nuorodą į tą langelį formulėje:

    =DATEDIF(B1, B2, "Y") & " Metai, "& DATEDIF(B1,B2, "YM") & " Mėnesiai, "&DATEDIF(B1,B2, "MD") & " Dienos"

    Kai B1 yra DOB, o B2 - data, pagal kurią norite apskaičiuoti amžių.

    Apskaičiuoti amžių tam tikrais metais

    Ši formulė praverčia tais atvejais, kai neapibrėžta visa data, pagal kurią reikia skaičiuoti, o žinote tik metus.

    Tarkime, dirbate su medicinine duomenų baze ir jūsų tikslas yra sužinoti pacientų amžių tuo metu, kai jiems buvo atlikta paskutinė išsami medicininė apžiūra.

    Darant prielaidą, kad gimimo datos yra B stulpelyje, pradedant 3 eilute, o paskutinio medicininio patikrinimo metai yra C stulpelyje, amžiaus apskaičiavimo formulė yra tokia:

    =DATEDIF(B3,DATE(C3, 1, 1), "y")

    Kadangi tiksli medicininio patikrinimo data nėra nustatyta, naudokite funkciją DATE su bet kokiu datos ir mėnesio argumentu, pvz., DATE(C3, 1, 1, 1).

    Funkcija DATE iš langelio B3 ištraukia metus, sukuria pilną datą, naudodama jūsų pateiktus mėnesio ir dienos skaičius (šiame pavyzdyje - 1 sausio mėn.), ir perduoda šią datą funkcijai DATEDIF. Taip gaunamas paciento amžius konkrečių metų sausio 1 d:

    Sužinokite datą, kada asmeniui sukanka N metų

    Tarkime, jūsų draugas gimė 1978 m. kovo 8 d. Kaip sužinoti, kurią dieną jam sukaks 50 metų? Paprastai prie asmens gimimo datos paprasčiausiai pridedate 50 metų. "Excel" programoje tą patį darote naudodami funkciją DATE:

    =DATA(METAI(B2) + 50, MĖNUO(B2), DIENA(B2))

    kur B2 yra gimimo data.

    Užuot formulėje įrašę metų skaičių, galite pateikti nuorodą į tam tikrą langelį, į kurį naudotojai gali įvesti bet kokį metų skaičių (F1 toliau pateiktoje ekrano kopijoje):

    Apskaičiuokite amžių iš dienos, mėnesio ir metų įvairiose ląstelėse

    Kai gimimo data padalijama į 3 skirtingus langelius (pvz., metai yra B3 langelyje, mėnuo - C3 langelyje, o diena - D3 langelyje), amžių galite apskaičiuoti tokiu būdu:

    • Gaukite gimimo datą naudodami DATE ir DATEVALUE funkcijas:

      DATA(B3,MONTH(DATEVALUE(C3& "1")),D3)

    • Įterpkite pirmiau pateiktą formulę į DATEDIF, kad apskaičiuotumėte amžių pagal gimimo datą metais, mėnesiais ir dienomis: =DATEDIF(DATE(B3, MĖNESIS(DATEVALUE(C3& "1")), D3), TODAY(), "y") & " Metai, "& DATEDIF(DATE(B3, MĖNESIS(DATEVALUE(C3& "1")), D3),TODAY(), "ym") & " Mėnesiai, "& DATEDIF(DATE(B3, MĖNESIS(DATEVALUE(C3& "1")), D3), TODAY(), "md") & " Dienos"

    Daugiau pavyzdžių, kaip apskaičiuoti dienų skaičių iki ir po datos, rasite straipsnyje Kaip apskaičiuoti dienas nuo arba iki datos programoje "Excel".

    Amžiaus skaičiuoklė "Excel" programoje

    Jei norite turėti savo amžiaus skaičiuoklę "Excel" programoje, galite ją pasidaryti naudodami kelias skirtingas DATEDIF formules, paaiškintas toliau. Jei nenorite išradinėti dviračio, galite naudoti mūsų "Excel" specialistų sukurtą amžiaus skaičiuoklę.

    Kaip sukurti amžiaus skaičiuoklę "Excel" programoje

    Dabar, kai žinote, kaip "Excel" programoje sukurti amžiaus formulę, galite sukurti pasirinktinę amžiaus skaičiuoklę, pvz., šią:

    Pastaba. Jei norite peržiūrėti įterptąjį sąsiuvinį, leiskite naudoti rinkodaros slapukus.

    Tai, ką matote pirmiau, yra įterptas "Excel Online" lapas, todėl nedvejodami įveskite savo gimimo datą į atitinkamą langelį ir tuoj pat gausite savo amžių.

    Skaičiuoklė naudoja šias formules, kad apskaičiuotų amžių pagal A3 ląstelėje esančią gimimo datą ir šiandienos datą.

    • B5 formulė apskaičiuoja amžių metais, mėnesiais ir dienomis: =DATEDIF(B2,TODAY(), "Y") & " Metai, " & DATEDIF(B2,TODAY(), "YM") & " Mėnesiai, " & DATEDIF(B2,TODAY(), "MD") & " Dienos"
    • Pagal B6 formulę apskaičiuojamas amžius mėnesiais: =DATEDIF($B$3,TODAY(), "m")
    • Pagal B7 formulę apskaičiuojamas amžius dienomis: =DATEDIF($B$3,TODAY(), "d")

    Jei turite patirties su "Excel" formos valdikliais, galite pridėti parinktį apskaičiuoti amžių konkrečią datą, kaip parodyta toliau pateiktoje ekrano kopijoje:

    Tam pridėkite porą parinkčių mygtukų ( Kūrėjo skirtukas > Įdėkite > Formos valdikliai > Pasirinkimo mygtukas ) ir susiekite juos su tam tikra ląstele. Tada parašykite IF/DATEDIF formulę, kad gautumėte amžių šiandien arba naudotojo nurodytą datą.

    Formulė veikia pagal tokią logiką:

    • Jei Šiandienos data pasirinkties langelis pažymėtas, susietame langelyje (šiame pavyzdyje - I5) atsiranda reikšmė 1, o amžiaus formulė apskaičiuojama pagal šiandienos datą: IF($I$5=1, DATEDIF($B$3,TODAY(), "Y") & " Metai, " & DATEDIF($B$3,TODAY(), "YM") & " Mėnesiai, " & DATEDIF($B$3, TODAY(), "MD") & " Dienos")
    • Jei Konkreti data pasirenkamas parinkties mygtukas IR ląstelėje B7 įrašoma data, amžius apskaičiuojamas nurodytą datą: IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Metai, " & DATEDIF($B$3, $B$7, "YM") & " Mėnesiai, " & DATEDIF($B$3, $B$7, "MD") & " Dienos", ""))

    Galiausiai, sujungę pirmiau minėtas funkcijas tarpusavyje, gausite visą amžiaus apskaičiavimo formulę (B9):

    =IF($I$5=1, DATEDIF($B$3, TODAY(), "Y") & " Metai, " & DATEDIF($B$3, TODAY(), "YM") & " Mėnesiai, " & DATEDIF($B$3, TODAY(), "MD") & " Dienos", IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Metai, " & DATEDIF($B$3, $B$7, "YM") & " Mėnesiai, " & DATEDIF($B$3, $B$7, "MD") & " Dienos", ""))

    B10 ir B11 formulės veikia pagal tą pačią logiką. Žinoma, jos yra daug paprastesnės, nes jose yra tik viena DATEDIF funkcija, kuri grąžina amžių kaip atitinkamai pilnų mėnesių arba dienų skaičių.

    Jei norite sužinoti daugiau, kviečiu atsisiųsti šią "Excel" amžiaus skaičiuoklę ir išnagrinėti B9:B11 langeliuose esančias formules.

    Atsisiųsti "Excel" amžiaus skaičiuoklę

    Paruošta naudoti "Excel" amžiaus skaičiuoklė

    "Ultimate Suite" naudotojams nereikia rūpintis savo amžiaus skaičiuokle "Excel" programoje - ją galima sukurti vos keliais spustelėjimais:

    1. Pasirinkite ląstelę, į kurią norite įterpti amžiaus formulę, eikite į "Ablebits" įrankiai skirtukas> Data & amp; laikas grupę ir spustelėkite Data & amp; Laiko vedlys mygtuką.

    2. Bus paleistas datos ir laiko vedlys, ir jūs pereisite tiesiai į Amžius skirtukas.
    3. Dėl Amžius skirtuke galite nurodyti 3 dalykus:
      • Gimimo duomenys kaip ląstelės nuorodą arba datą mm/dd/yyyy formatu.
      • Amžius šiandienos data arba konkreti data .
      • Pasirinkite, ar amžių skaičiuoti dienomis, mėnesiais, metais, ar tiksliu amžiumi.
    4. Spustelėkite Įterpkite formulę mygtuką.

    Atlikta!

    Formulė akimirksniu įterpiama į pasirinktą ląstelę, o jūs dukart spustelėkite užpildymo rankenėlę, kad nukopijuotumėte ją į stulpelį.

    Kaip pastebėjote, mūsų "Excel" amžiaus skaičiuoklės sukurta formulė yra sudėtingesnė už iki šiol aptartas, tačiau ji pritaikyta vienaskaitos ir daugiskaitos laiko vienetams, pvz., "dienai" ir "dienoms".

    Jei norite atsikratyti nulinių vienetų, pvz., "0 dienų", pasirinkite Nedarykite rodyti nulinius vienetus žymimasis langelis:

    Jei norite išbandyti šią amžiaus skaičiuoklę ir atrasti dar 60 laiką taupančių "Excel" priedų, galite atsisiųsti bandomąją "Ultimate Suite" versiją šio įrašo pabaigoje.

    Kaip pažymėti tam tikrą amžių (iki arba virš tam tikro amžiaus)

    Kai kuriais atvejais gali prireikti ne tik apskaičiuoti amžių "Excel" programoje, bet ir paryškinti langelius, kuriuose yra mažesnio arba didesnio amžiaus.

    Jei pagal amžiaus skaičiavimo formulę gaunamas pilnų metų skaičius, galite sukurti įprastą sąlyginio formatavimo taisyklę, pagrįstą paprasta formule, pvz., tokia kaip ši:

    • Norėdami pažymėti amžių, lygų 18 metų arba didesnį nei 18 metų: =$C2>=18
    • Norėdami pažymėti jaunesnį nei 18 metų amžių: =$C2<18

    Kai C2 yra aukščiausias amžiaus stulpelio langelis (neįskaitant stulpelio antraštės).

    Tačiau ką daryti, jei jūsų formulėje amžius rodomas metais ir mėnesiais arba metais, mėnesiais ir dienomis? Tokiu atveju turėsite sukurti taisyklę, pagrįstą DATEDIF formule, pagal kurią amžius apskaičiuojamas pagal gimimo datą metais.

    Tarkime, kad gimimo datos yra B stulpelyje, prasidedančiame 2 eilute, formulės yra tokios:

    • Išryškinti amžių pagal 18 (geltona): =DATEDIF($B2, TODAY(), "Y")<18
    • Išryškinti amžių tarp 18 ir 65 (žalia spalva): =AND(DATEDIF($B2, TODAY(), "Y")>=18, DATEDIF($B2, TODAY(), "Y")<=65)
    • Išryškinti amžių per 65 (mėlyna): =DATEDIF($B2, TODAY(), "Y")>65

    Norėdami sukurti taisykles pagal pirmiau pateiktas formules, pasirinkite ląsteles arba visas eilutes, kurias norite paryškinti, eikite į Pagrindinis skirtukas> Stiliai grupę ir spustelėkite Sąlyginis formatavimas > Nauja taisyklė... > Naudokite formulę, kad nustatytumėte, kurias ląsteles formatuoti .

    Išsamius veiksmus rasite čia: Kaip sukurti sąlyginio formatavimo taisyklę pagal formulę.

    Taip apskaičiuojamas amžius "Excel" programoje. Tikiuosi, kad šias formules jums buvo lengva išmokti ir išbandysite jas savo darbalapiuose. Dėkoju, kad skaitėte, ir tikiuosi, kad kitą savaitę susitiksime mūsų tinklaraštyje!

    Galimi atsisiuntimai

    "Excel" amžiaus skaičiavimo pavyzdžiai (.xlsx failas)

    "Ultimate Suite" 14 dienų visiškai veikianti versija (.exe failas)

    Michaelas Brownas yra atsidavęs technologijų entuziastas, mėgstantis supaprastinti sudėtingus procesus naudojant programinės įrangos įrankius. Turėdamas daugiau nei dešimtmetį patirtį technologijų pramonėje, jis patobulino savo įgūdžius „Microsoft Excel“ ir „Outlook“, taip pat „Google“ skaičiuoklėse ir dokumentuose. Michaelio tinklaraštis skirtas dalytis savo žiniomis ir patirtimi su kitais, jame pateikiami lengvai įgyvendinami patarimai ir vadovėliai, kaip pagerinti produktyvumą ir efektyvumą. Nesvarbu, ar esate patyręs profesionalas, ar pradedantysis, Michaelo tinklaraštyje rasite vertingų įžvalgų ir praktinių patarimų, kaip išnaudoti visas šių pagrindinių programinės įrangos įrankių galimybes.