Spis treści
Samouczek pokazuje różne sposoby uzyskania wieku z daty urodzenia w Excelu. Poznasz garść formuł, aby obliczyć wiek jako liczbę pełnych lat, uzyskać dokładny wiek w latach, miesiącach i dniach na dzień dzisiejszy lub konkretną datę.
Nie ma specjalnej funkcji do obliczania wieku w programie Excel, jednak istnieje kilka różnych sposobów, aby przekonwertować datę urodzenia na wiek. Ten samouczek wyjaśni zalety i wady każdego sposobu, pokazuje, jak stworzyć doskonałą formułę obliczania wieku w programie Excel i dostosować ją do rozwiązywania niektórych konkretnych zadań.
Jak obliczyć wiek z daty urodzenia w Excelu
W życiu codziennym pytanie " Ile masz lat? " zwykle oznacza odpowiedź wskazującą, ile lat żyjesz. W programie Microsoft Excel możesz zrobić formułę, aby obliczyć dokładny wiek w miesiącach, dniach, godzinach, a nawet minutach. Ale bądźmy tradycyjni i naucz się najpierw, jak obliczyć wiek z DOB w latach.
Podstawowa formuła Excela dla wieku w latach
Jak zwykle oblicza się czyjś wiek? Po prostu odejmując datę urodzenia od daty bieżącej. Ta konwencjonalna formuła wieku może być również używana w programie Excel.
Zakładając, że data urodzenia znajduje się w komórce B2, formuła obliczająca wiek w latach przebiega następująco:
=(DZISIAJ()-B2)/365
Pierwsza część formuły (DZIŚ()-B2) zwraca różnicę między bieżącą datą a datą urodzenia w dniach, a następnie dzielisz tę liczbę przez 365, aby uzyskać liczby lat.
Wzór jest oczywisty i łatwy do zapamiętania, jednak jest mały problem. W większości przypadków zwraca on liczbę dziesiętną, jak pokazano na poniższym zrzucie ekranu.
Aby wyświetlić liczbę pełnych lat, użyj funkcji INT do zaokrąglenia liczby dziesiętnej w dół do najbliższej liczby całkowitej:
=INT((TODAY()-B2)/365)
Wady: Używanie tej formuły wieku w Excelu daje dość dokładne wyniki, ale nie bezbłędne. Dzielenie przez średnią liczbę dni w roku działa dobrze przez większość czasu, ale czasami dostaje wiek źle. Na przykład, jeśli ktoś urodził się 29 lutego i dziś jest 28 lutego, formuła sprawi, że osoba będzie o jeden dzień starsza.
Jako alternatywę można podzielić przez 365,25 zamiast 365, ponieważ co czwarty rok ma 366 dni. Jednak to podejście również nie jest idealne. Na przykład, jeśli obliczasz wiek dziecka, które nie przeżyło jeszcze roku przestępnego, dzielenie przez 365,25 daje zły wynik.
Ogólnie rzecz biorąc, odejmowanie daty urodzenia od bieżącej daty działa świetnie w normalnym życiu, ale nie jest idealnym podejściem w Excelu. W dalszej części tego poradnika poznasz kilka specjalnych funkcji, które obliczają wiek bezbłędnie niezależnie od roku.
Obliczanie wieku na podstawie daty urodzenia za pomocą funkcji YEARFRAC
Bardziej niezawodnym sposobem konwersji DOB na wiek w Excelu jest użycie funkcji YEARFRAC, która zwraca ułamek roku, czyli liczbę całych dni między dwiema datami.
Składnia funkcji ROKFRAC jest następująca:
YEARFRAC(start_data, end_data, [podstawa])Dwa pierwsze argumenty są oczywiste i raczej nie wymagają dodatkowych wyjaśnień. Podstawa jest opcjonalnym argumentem określającym podstawę liczenia dni, która ma być użyta.
Aby stworzyć idealnie prawdziwy wzór na wiek, dostarcz następujące wartości do funkcji YEARFRAC:
- Początek_daty - data urodzenia.
- Koniec_daty - Funkcja DZISIAJ() zwracająca dzisiejszą datę.
- Podstawa - podstawa użytkowania 1 który mówi Excelowi, aby podzielił rzeczywistą liczbę dni w miesiącu przez rzeczywistą liczbę dni w roku.
Biorąc pod uwagę powyższe, formuła Excela do obliczenia wieku z daty urodzenia jest następująca:
YEARFRAC( data urodzenia , DZIŚ(), 1)Zakładając, że data urodzenia znajduje się w komórce B2, formuła przyjmuje następujący kształt:
=YEARFRAC(B2, TODAY(), 1)
Podobnie jak w poprzednim przykładzie, wynik funkcji YEARFRAC jest również liczbą dziesiętną. Aby to naprawić, użyj funkcji ROUNDDOWN z 0 w ostatnim argumencie, ponieważ nie chcesz żadnych miejsc dziesiętnych.
Tak więc, oto ulepszona formuła YEARFRAC do obliczania wieku w programie Excel:
=ROUNDDOWN(YEARFRAC(B2, TODAY(), 1), 0)
Obliczanie wieku w Excelu za pomocą DATEDIF
Jeszcze jednym sposobem na konwersję daty urodzenia na wiek w Excelu jest użycie funkcji DATEDIF:
DATEDIF(start_data, end_data, jednostka)Funkcja może zwrócić różnicę pomiędzy dwoma datami w różnych jednostkach czasu, takich jak lata, miesiące i dni, w zależności od wartości podanej w parametrze jednostka argument:
- Y - zwraca liczbę pełne lata pomiędzy datą początkową a końcową.
- M - zwraca liczbę pełne miesiące pomiędzy datami.
- D - zwraca liczbę dni pomiędzy tymi dwoma datami.
- YM - powroty miesiące , ignorując dni i lata.
- MD - zwraca różnicę w dni , ignorując miesiące i lata.
- YD - zwraca różnicę w dni , ignorując lata.
Ponieważ naszym celem jest obliczenie wiek w lata , używamy jednostki "y":
DATEDIF( data urodzenia , TODAY(), "y")W tym przykładzie DOB znajduje się w komórce B2, a ty odwołujesz się do tej komórki w swojej formule wieku:
=DATEDIF(B2, TODAY(), "y")
W tym przypadku nie jest potrzebna dodatkowa funkcja zaokrąglająca, ponieważ formuła DATEDIF z jednostką "y" oblicza liczbę pełnych lat:
Jak uzyskać wiek z daty urodzenia w latach, miesiącach i dniach
Jak właśnie zauważyłeś, obliczanie wieku jako liczby pełnych lat, które dana osoba przeżyła, jest łatwe, ale nie zawsze wystarczające. Jeśli chcesz poznać dokładny wiek, czyli ile lat, miesięcy i dni dzieli czyjąś datę urodzenia od daty bieżącej, napisz 3 różne funkcje DATEDIF:
- Aby uzyskać liczbę lat:
=DATEDIF(B2, TODAY(), "Y")
- Aby uzyskać liczbę miesięcy:
=DATEDIF(B2, TODAY(), "YM")
- Aby uzyskać liczbę dni:
=DATEDIF(B2,TODAY(), "MD")
Gdzie B2 jest datą urodzenia.
A następnie, konkatenuj powyższe funkcje w jednej formule, jak to:
=DATEDIF(B2,TODAY(), "Y") & DATEDIF(B2,TODAY(), "YM") & DATEDIF(B2,TODAY(), "MD")
Powyższa formuła zwraca 3 liczby (lata, miesiące i dni) konkatenowane w pojedynczym ciągu tekstowym, jak pokazano na zrzucie ekranu poniżej:
Nie ma to większego sensu, hm? Aby wyniki były bardziej znaczące, oddziel liczby przecinkami i określ, co oznacza każda wartość:
=DATEDIF(B2,TODAY(), "Y") & " Lata, " & DATEDIF(B2,TODAY(), "YM") & " Miesiące, " & DATEDIF(B2,TODAY(), "MD") & " Dni"
Efekt wygląda teraz znacznie lepiej:
Formuła działa świetnie, ale możesz ją jeszcze bardziej ulepszyć, ukrywając wartości zerowe. W tym celu dodaj 3 instrukcje IF, które sprawdzają, czy nie ma wartości 0, po jednej na każdy DATEDIF:
=IF(DATEDIF(B2, TODAY(), "y")=0,"",DATEDIF(B2, TODAY(), "y")&" lata, ")& IF(DATEDIF(B2, TODAY(), "ym")=0,"",DATEDIF(B2, TODAY(), "ym")&" miesiące, ")& IF(DATEDIF(B2, TODAY(), "md")=0,",DATEDIF(B2, TODAY(), "md")&" dni")
Poniższy zrzut ekranu demonstruje ostateczną formułę wieku programu Excel w działaniu - zwraca ona wiek w latach, miesiącach i dniach, wyświetlając tylko niezerowa wartości:
Wskazówka. Jeśli szukasz formuły Excela do obliczenia wieku w lata i miesiące , weź powyższy wzór i usuń ostatni blok IF(DATEDIF()), który oblicza dni.
Konkretne formuły do obliczania wieku w Excelu
Omówione powyżej ogólne formuły obliczania wieku sprawdzają się w większości przypadków. W niektórych sytuacjach możesz jednak potrzebować czegoś bardzo specyficznego. Oczywiście nie da się uwzględnić każdego scenariusza, ale poniższe przykłady dadzą Ci kilka pomysłów na to, jak możesz podrasować formułę wiekową w zależności od konkretnego zadania.
Jak obliczyć wiek na określoną datę w Excelu
Jeśli chcesz poznać czyjś wiek w określonym dniu, użyj omówionej powyżej formuły wiekowej DATEDIF, ale zastąp funkcję TODAY() w 2. argumencie konkretną datą.
Zakładając, że data urodzenia jest w B1, poniższy wzór zwróci wiek na dzień 1 stycznia 2020 r:
=DATEDIF(B1, "1/1/2020", "Y") & " Lata, " & DATEDIF(B1, "1/1/2020", "YM") & " Miesiące, " & DATEDIF(B1, "1/1/2020", "MD") & " Dni"
Aby formuła wieku była bardziej elastyczna, możesz wprowadzić datę w jakiejś komórce i odwołać się do tej komórki w swojej formule:
=DATEDIF(B1, B2, "Y") & " Lata,"& DATEDIF(B1,B2, "YM") & " Miesiące,"&DATEDIF(B1,B2, "MD") & " Dni"
Gdzie B1 to DOB, a B2 to data, na którą chcesz obliczyć wiek.
Obliczanie wieku w danym roku
Wzór ten przydaje się w sytuacjach, gdy nie jest określona pełna data, na którą należy obliczyć, a znany jest tylko rok.
Powiedzmy, że pracujesz z medyczną bazą danych, a Twoim celem jest poznanie wieku pacjentów w momencie, gdy przeszli ostatnie pełne badanie lekarskie.
Zakładając, że daty urodzenia znajdują się w kolumnie B począwszy od wiersza 3, a rok ostatniego badania lekarskiego znajduje się w kolumnie C, formuła obliczania wieku przebiega następująco:
=DATEDIF(B3,DATE(C3, 1, 1), "y")
Ponieważ dokładna data badania lekarskiego nie jest określona, używasz funkcji DATE z arbitralnym argumentem daty i miesiąca, np. DATE(C3, 1, 1).
Funkcja DATE pobiera rok z komórki B3, tworzy pełną datę przy użyciu podanych numerów miesiąca i dnia (w tym przykładzie 1-Jan) i przekazuje tę datę do DATEDIF. W rezultacie otrzymujemy wiek pacjenta na dzień 1 stycznia danego roku:
Znajdź datę, kiedy dana osoba osiąga wiek N
Załóżmy, że Twój przyjaciel urodził się 8 marca 1978 r. Skąd wiesz, w jakim dniu kończy 50 lat? Zazwyczaj po prostu dodajesz 50 lat do daty urodzenia danej osoby. W Excelu robisz to samo, używając funkcji DATA:
=DATE(ROK(B2) + 50, MIESIĄC(B2), DZIEŃ(B2))
Gdzie B2 jest datą urodzenia.
Zamiast twardego kodowania liczby lat w formule, możesz odwołać się do określonej komórki, w której użytkownicy mogą wprowadzić dowolną liczbę lat (F1 na zrzucie ekranu poniżej):
Obliczanie wieku z dnia, miesiąca i roku w różnych komórkach
Gdy data urodzenia jest podzielona na 3 różne komórki (np. rok jest w B3, miesiąc w C3, a dzień w D3), można w ten sposób obliczyć wiek:
- Uzyskaj datę urodzenia za pomocą funkcji DATE i DATEVALUE:
DATE(B3,MONTH(DATEVALUE(C3& "1")),D3)
- Osadzić powyższą formułę w DATEDIF, aby obliczyć wiek z daty urodzenia w latach, miesiącach i dniach:
=DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3), TODAY(), "y") & " Years,"& DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3),TODAY(), "ym") & " Months,"& DATEDIF(DATE(B3, MONTH(DATEVALUE(C3& "1")), D3), TODAY(), "md") & " Days"
Więcej przykładów obliczania liczby dni przed/po dacie znajdziesz w rozdziale Jak obliczyć dni od lub do daty w Excelu.
Kalkulator wieku w Excelu
Jeśli chciałbyś mieć swój własny kalkulator wieku w Excelu, możesz go stworzyć używając kilku różnych formuł DATEDIF wyjaśnionych poniżej. Jeśli wolisz nie wymyślać koła na nowo, możesz użyć kalkulatora wieku stworzonego przez naszych specjalistów od Excela.
Jak stworzyć kalkulator wieku w Excelu
Teraz, gdy wiesz, jak zrobić formułę wieku w programie Excel, możesz zbudować niestandardowy kalkulator wieku, na przykład ten:
Uwaga. Aby wyświetlić osadzony zeszyt ćwiczeń, należy zezwolić na marketingowe pliki cookie.
To co widzisz powyżej to osadzony arkusz Excel Online, więc nie krępuj się wpisać swojej daty urodzenia w odpowiedniej komórce, a za chwilę otrzymasz swój wiek.
Kalkulator używa następujących formuł do obliczania wieku na podstawie daty urodzenia w komórce A3 i dzisiejszej daty.
- Wzór w B5 oblicza wiek w latach, miesiącach i dniach:
=DATEDIF(B2,TODAY(), "Y") & " Lata, " & DATEDIF(B2,TODAY(), "YM") & " Miesiące, " & DATEDIF(B2,TODAY(), "MD") & " Dni"
- Wzór w B6 oblicza wiek w miesiącach:
=DATEDIF($B$3,TODAY(), "m")
- Wzór w B7 oblicza wiek w dniach:
=DATEDIF($B$3,TODAY(), "d")
Jeśli masz jakieś doświadczenie z kontrolkami Excel Form, możesz dodać opcję obliczania wieku w określonej dacie, jak pokazano na poniższym zrzucie ekranu:
W tym celu należy dodać kilka przycisków opcji ( Zakładka Deweloper > Wkładka > Elementy sterujące formą > Przycisk opcji ), i połącz je z jakąś komórką. A następnie napisz formułę IF/DATEDIF, aby uzyskać wiek albo na dzisiejszą datę, albo na datę określoną przez użytkownika.
Formuła działa z następującą logiką:
- Jeśli Dzisiejsza data zaznaczone jest pole opcji, w połączonej komórce (w tym przykładzie I5) pojawia się wartość 1, a formuła wieku jest obliczana na podstawie dzisiejszej daty:
IF($I$5=1, DATEDIF($B$3,TODAY(), "Y") & " Lata, " & DATEDIF($B$3,TODAY(), "YM") & " Miesiące, " & DATEDIF($B$3, TODAY(), "MD") & " Dni")
- Jeśli Konkretna data wybrano przycisk opcji ORAZ w komórce B7 wprowadzono datę, wiek jest obliczany na określoną datę:
IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Lata, " & DATEDIF($B$3, $B$7, "YM") & " Miesiące, " & DATEDIF($B$3, $B$7, "MD") & " Dni", ""))
Na koniec zagnieżdż powyższe funkcje w sobie, a otrzymasz kompletną formułę obliczania wieku (w B9):
=IF($I$5=1, DATEDIF($B$3, TODAY(), "Y") & " Lata, " & DATEDIF($B$3, TODAY(), "YM") & " Miesiące, " & DATEDIF($B$3, TODAY(), "MD") & " Dni", IF(ISNUMBER($B$7), DATEDIF($B$3, $B$7, "Y") & " Lata, " & DATEDIF($B$3, $B$7, "YM") & " Miesiące, " & DATEDIF($B$3, $B$7, "MD") & " Dni", "")
Formuły w B10 i B11 działają z tą samą logiką. Oczywiście są one znacznie prostsze, ponieważ zawierają tylko jedną funkcję DATEDIF zwracającą wiek jako liczbę pełnych miesięcy lub dni, odpowiednio.
Aby poznać szczegóły, zapraszam do pobrania tego kalkulatora wieku w Excelu i zbadania formuł w komórkach B9:B11.
Pobierz Kalkulator wieku dla programu Excel
Gotowy do użycia kalkulator wieku dla Excela
Użytkownicy naszego pakietu Ultimate Suite nie muszą zawracać sobie głowy tworzeniem własnego kalkulatora wieku w Excelu - wystarczy kilka kliknięć:
- Zaznacz komórkę, w której chcesz wstawić formułę wieku, przejdź do Narzędzia Ablebits tab> Data & Godzina grupę, a następnie kliknij przycisk Kreator daty i czasu przycisk.
- Uruchomiony zostanie kreator Data & Time, w którym przechodzimy bezpośrednio do Wiek tab.
- Na Wiek zakładka, są 3 rzeczy, które musisz określić:
- Dane dotyczące urodzenia jako odwołanie do komórki lub datę w formacie mm/dd/yyyy.
- Wiek w dniu dzisiejsza data lub konkretna data .
- Wybierz, czy chcesz obliczyć wiek w dniach, miesiącach, latach lub dokładny wiek.
- Kliknij przycisk Wstawić wzór przycisk.
Zrobione!
Formuła jest chwilowo wstawiana do wybranej komórki, a Ty dwukrotnie klikasz uchwyt wypełnienia, aby skopiować ją w dół kolumny.
Jak zapewne zauważyłeś, formuła stworzona przez nasz kalkulator wieku w Excelu jest bardziej złożona niż te, które omówiliśmy do tej pory, ale uwzględnia liczbę pojedynczą i mnogą jednostek czasu, takich jak "dzień" i "dni".
Jeśli chcesz pozbyć się jednostek zerowych, takich jak "0 dni", wybierz Nie pokaż zero jednostek pole wyboru:
Jeśli jesteś ciekawy, jak przetestować ten kalkulator wieku, jak również odkryć 60 innych dodatków oszczędzających czas dla Excela, zapraszamy do pobrania wersji próbnej naszego Ultimate Suite na końcu tego postu.
Jak wyróżnić określone grupy wiekowe (poniżej lub powyżej określonego wieku)
W niektórych sytuacjach możesz potrzebować nie tylko obliczyć wiek w Excelu, ale także podświetlić komórki, które zawierają wiek poniżej lub powyżej określonego wieku.
Jeśli twoja formuła obliczania wieku zwraca liczbę pełnych lat, to możesz stworzyć zwykłą regułę formatowania warunkowego opartą na prostej formule, takiej jak te:
- Aby zaznaczyć wiek równy lub większy niż 18 lat: =$C2>=18
- Aby podkreślić wiek poniżej 18 lat: =$C2<18
Gdzie C2 to najwyższa komórka w kolumnie Wiek (nie licząc nagłówka kolumny).
Ale co jeśli twoja formuła wyświetla wiek w latach i miesiącach lub w latach, miesiącach i dniach? W takim przypadku będziesz musiał stworzyć regułę opartą na formule DATEDIF, która oblicza wiek z daty urodzenia w latach.
Zakładając, że daty urodzenia znajdują się w kolumnie B począwszy od wiersza 2, wzory są następujące:
- Aby podkreślić wiek pod adresem 18 (żółty):
=DATEDIF($B2, TODAY(), "Y")<18
- Aby podkreślić wiek między 18 i 65 (kolor zielony):
=AND(DATEDIF($B2, TODAY(), "Y")>=18, DATEDIF($B2, TODAY(), "Y")<=65)
- Aby podkreślić wiek nad 65 (niebieski):
=DATEDIF($B2, TODAY(), "Y")>65
Aby utworzyć reguły oparte na powyższych formułach, zaznacz komórki lub całe wiersze, które chcesz podświetlić, przejdź do zakładki Strona główna tab> Style grupę, a następnie kliknij Formatowanie warunkowe > Nowa zasada... > Użyj formuły, aby określić, które komórki mają być sformatowane .
Szczegółowe kroki można znaleźć tutaj: Jak zrobić regułę formatowania warunkowego na podstawie formuły.
Tak właśnie oblicza się wiek w Excelu. Mam nadzieję, że formuły były dla Ciebie łatwe do nauczenia się i dasz im spróbować w swoich arkuszach. Dziękuję za przeczytanie i mam nadzieję, że zobaczymy się na naszym blogu w przyszłym tygodniu!
Dostępne pliki do pobrania
Przykłady obliczeń wieku w Excelu (plik .xlsx)
Ultimate Suite 14-dniowa w pełni funkcjonalna wersja (plik .exe)