Як обчислити вік у роках, місяцях і днях
Сказати, що людині “34 роки”, зазвичай достатньо. Але для офіційних документів, страхових форм, медичних записів або перевірки права на пільги інколи потрібна повна розбивка: 34 роки, 7 місяців і 12 днів. Для цього потрібно трохи більше, ніж просто відняти роки.
Калькулятор віку робить це автоматично. У цій статті покроково пояснюється логіка обчислення — корисно, якщо вам потрібно перевірити результат, порахувати вручну або закласти цю логіку в таблицю чи застосунок.
Базовий метод
Щоб знайти вік у роках, місяцях і днях від дати народження до цільової дати:
1. Порахуйте повні роки — знайдіть останній день народження, який був у цільову дату або раніше 2. Порахуйте повні місяці — від останнього дня народження до найближчої “місячної річниці” (того ж числа) у цільову дату або раніше 3. Порахуйте решту днів — кількість днів між останньою місячною річницею та цільовою датою
Приклад робить це очевидним.
Дата народження: 15 березня 1990 Цільова дата: 4 листопада 2026
Крок 1 — Повні роки: Останній день народження був 15 березня 2026. Це 36 повних років.
Крок 2 — Повні місяці від 15 березня 2026:
- 15 квітня = 1 місяць
- 15 травня = 2 місяці
- 15 червня = 3 місяці
- 15 липня = 4 місяці
- 15 серпня = 5 місяців
- 15 вересня = 6 місяців
- 15 жовтня = 7 місяців
- 4 листопада раніше за 15 листопада, тож зупиняємося на 7 місяцях
Крок 3 — Решта днів від 15 жовтня до 4 листопада: У жовтні 31 день. Від 15 жовтня до 31 жовтня = 16 днів. Плюс 1–4 листопада = 4 дні. Разом: 20 днів.
Результат: 36 років, 7 місяців, 20 днів
Чому просте віднімання не працює
Може здатися, що достатньо відняти дати “по роках, по місяцях, по днях”. Проблема в тому, що місяці мають різну тривалість.
Якщо ви народилися 31 січня і хочете знати вік на 1 березня:
- 31 січня → 28 (або 29) лютого = 1 місяць (хоча це менше днів, ніж у більшості місяців)
- 28 лютого → 1 березня = 1 день
Отже, ви стали старшими на 1 місяць і 1 день — а не на 29 чи 30 днів, як показало б наївне віднімання по днях.
Це ключова складність. Місяці — одиниці змінної довжини. Коли ви “додаєте 1 місяць” до 31 січня, ви отримуєте 28 лютого (або 29 у високосний рік) — останній день місяця — бо 31 лютого не існує. Це називають “прив’язкою до кінця місяця” (month-end clamping).
“Прив’язка до кінця місяця”: граничний випадок, на якому часто помиляються
Якщо день народження припадає на 29‑те, 30‑те або 31‑ше число, деякі місяці не мають такого дня:
- Народжені 30 січня: “місячна річниця” у лютому — 28 (або 29) лютого
- Народжені 31 січня: те саме
- Народжені 31 березня: “місячна річниця” у квітні — 30 квітня
Через це “залишок днів” після підрахунку місяців може виглядати трохи завищеним для тих, хто народився наприкінці місяця. Це не помилка — це правильний наслідок того, як у реальному календарі працюють місячні річниці.
Приклад: Народжені 31 січня. Цільова дата: 5 березня.
- 31 січня → 28 лютого = 1 місяць (останній день лютого, бо 31‑го немає)
- 28 лютого → 5 березня = 5 днів
- Результат: 1 місяць, 5 днів
Якби ви натомість порахували “у лютому 28 днів, від 31 січня до 5 березня 33 дні, 33 ÷ 30 = 1 місяць і 3 дні”, ви отримали б неправильну відповідь.
Дні народження у високосний рік
Люди, народжені 29 лютого, мають день народження, який існує лише раз на чотири роки. У невисокосні роки в більшості країн діє така практика:
- День народження відзначають 28 лютого (день перед 1 березня)
- У деяких країнах/правових системах — 1 березня
Для цілей обчислення віку “місячна річниця” дня народження у невисокосні роки — 28 лютого. Тобто людина, народжена 29 лютого 2000 року, “виповнює 30” 28 лютого 2030 року, а не 1 березня.
Наступні “справжні” дні 29 лютого після 2000 року: 2004, 2008, 2012, 2016, 2020, 2024, 2028, 2032. Зверніть увагу, що проміжок від 1900 (не високосний) до 2000 (високосний, бо кратний 400) означає, що в близькому минулому та майбутньому 29 лютого з’являється рівно раз на 4 роки.
Як порахувати вік вручну у табличному форматі
Для наочності — покроковий “табличний” підхід для дати народження 22 липня 1985 і цільової дати 10 квітня 2026:
| Крок | Обчислення | Результат |
|---|---|---|
| Останній день народження | 22 липня 2025 (22 липня 2026 після 10 квітня) | 40 повних років |
| Місяці від 22 липня 2025 | 22 серп., 22 вер., 22 жовт., 22 лист., 22 груд., 22 січ., 22 лют., 22 бер. = 8 місяців | 8 повних місяців |
| Наступна річниця | 22 квітня 2026 (після 10 квітня) | Зупинка на 22 березня 2026 |
| Дні від 22 березня до 10 квітня | Березень: 22→31 = 9 днів; Квітень: 1→10 = 10 днів | 19 днів |
| Вік | 40 років, 8 місяців, 19 днів |
Вік у днях, тижнях і годинах
Іноді розбивка роки/місяці/дні — не те, що вам потрібно. Підрахунок точних днів є більш точним і повністю обходить проблему різної довжини місяців.
Від 22 липня 1985 до 10 квітня 2026:
- Загальна кількість днів = (2026 - 1985) × 365 + дні високосних років + коригування під конкретні дати
- Простіше: використайте Калькулятор віку, який показує загальні дні, тижні й години разом із результатом у роках/місяцях/днях
Загальна кількість днів найбільш корисна для:
- відстеження розвитку немовлят (педіатричні етапи часто рахують тижнями в перші два роки)
- перевірки віку в системах, де використовується кількість днів, а не календарні дати
- історичних і наукових контекстів, де важливий точний проміжок часу
Один тиждень — це рівно 7 днів. Одна година — це 1/24 доби. Щоб перевести дні в години, помножте на 24. Щоб перевести в тижні, поділіть на 7.
Обчислення віку в таблицях (spreadsheets)
У Microsoft Excel або Google Sheets функція DATEDIF може обчислювати компоненти віку:
=DATEDIF(birthdate, today, "Y") — completed years
=DATEDIF(birthdate, today, "YM") — months after last birthday
=DATEDIF(birthdate, today, "MD") — days after last month anniversary
Об’єднання: =DATEDIF(A1,TODAY(),"Y")&" years, "&DATEDIF(A1,TODAY(),"YM")&" months, "&DATEDIF(A1,TODAY(),"MD")&" days"
Примітка: DATEDIF — недокументована функція в Excel (успадкована від Lotus 1-2-3) і має відомі помилки з параметром "MD" для певних дат наприкінці місяця. Якщо потрібна надійність, Калькулятор віку зазвичай надійніший за формули таблиць.
Чому різні інструменти дають різні результати
Калькулятори віку інколи відрізняються на один день, особливо:
- для дат народження наприкінці місяця (31 січня, 31 березня тощо)
- у день перед днем народження
- у розрахунках наприкінці лютого у високосні/невисокосні роки
Ці відмінності зазвичай пов’язані з тим, як інструмент обробляє “прив’язку до кінця місяця” та чи рахує він день народження як день 0 чи день 1. Немає єдиної універсально “правильної” відповіді для всіх граничних випадків — конвенції відрізняються залежно від країни та правового контексту. Інструмент Кількість днів між датами може допомогти незалежно перевірити “сирий” підрахунок днів.


