Як обчислити вік у Excel (DATEDIF & YEARFRAC) + безкоштовний шаблон
Покрокові формули Excel для розрахунку віку за датою народження за допомогою DATEDIF, YEARFRAC і TODAY(). Містить практичні приклади, поради щодо усунення несправностей і безкоштовний онлайн-калькулятор віку.
Обчислення віку в Excel є одним із найпоширеніших завдань для роботи з електронними таблицями, якщо ви керуєте записами співробітників, відстежуєте дні народження клієнтів або створюєте шкільну базу даних. Цей вичерпний посібник охоплює всі методи, які вам знадобляться, від простих обчислень року до точного розподілу віку за роками, місяцями та днями.
Зміст
Перед тим, як почати: форматування дати Основи
Метод 1: DATEDIF – Вік у повних роках
Метод 2: Вік у роках, місяцях і Дні
Метод 3: Розрахунок віку на певну дату
Метод 4: YEARFRAC – вік із Десяткові знаки
Метод 5: обчислення віку для кількох рядків
Бонус: днів до наступного День народження
Таблиця порівняння методів
Поширені проблеми та Рішення
Excel проти Google Таблиць
Онлайн Альтернатива
Поширені запитання
Перед тим, як почати: Основи форматування дати
Перш ніж заглибитися в формули, переконайтеся, що ваші дати правильно відформатовані. Excel розрізняє фактичні дати та текст, який виглядає як дати, і ця різниця має значення.
Як перевірити, чи містить клітинка справжню дату:
Натисніть клітинку з дата
Подивіться на рядок формул - якщо він показує число (наприклад, 45678), це справжня дата
Якщо він показує текст (наприклад "01/15/1990"), Excel сприймає це як рядок
Перетворення тексту на дати:
Якщо ваша дата зберігається як текст, перетворіть її спочатку:
=DATEVALUE(A2)Потім відформатуйте клітинку результату як дату (клацніть правою кнопкою миші → Формат клітинок → Дата).
Важливо: Різні мови по-різному трактують формати дати. "01/02/2000" може означати 2 січня (США) або 1 лютого (Європа). Завжди перевіряйте, що ваші дати аналізуються правильно.
Метод 1: DATEDIF – вік у повних роках
Функція DATEDIF – це найпростіший спосіб обчислити вік у Excel. Він повертає кількість повних років між двома датами.
Формула:
=DATEDIF(A2, TODAY(), "Y")Де:
A2= клітинка, що містить дату народженняСЬОГОДНІ()= поточна дата (оновлення автоматично)"Y"= повернення завершено років
Приклад:
[[[TA G_130]]]A
B
Дата Народження
Вік
1990-03-15
=DATEDIF(A2, СЬОГОДНІ(), "Y")
=DATEDIF(A3, СЬОГОДНІ(), "Y")
=DATEDIF(A4, СЬОГОДНІ(), "Y")
Результат (станом на січень 2026):
Дата з Народження | Вік |
|---|---|
1990-03-15 | 35 [[[TAG_ 216]]] |
1985-07-22[[[TAG_ 221]]] | 40 | [ [[TAG_227]]]
2000-12-01 [ [[TAG_232]]] | 25 | [[[TAG_2 37]]]
Примітка: DATEDIF - це «прихована» функція в Excel - вона не відображається в автозавершенні, але працює ідеально. Просто введіть його вручну.
Спосіб 2: Вік у роках, місяцях і днях
Для ситуацій, коли потрібен точний вік (медичні записи, юридичні документи, кадрові системи), вам знадобиться повна версія розбивка.
Окремі формули:
Роки: =DATEDIF(A2, TODAY(), "Y")
Місяці: =DATEDIF(A2, TODAY(), "YM")
Дні: =DATEDIF(A2, TODAY(), "MD")Другий параметр коди:
"Y"= завершено років"YM"= залишилися місяці після завершення років"MD"= залишилися дні після завершення місяців
Формула «все в одному» (один клітинка):
=DATEDIF(A2,TODAY(),"Y") & " роки, " & DATEDIF(A2,TODAY(),"YM") & " місяці, " & DATEDIF(A2,TODAY(),"MD") & " днів"Приклад результату: "35 років, 10 місяців, 12 днів"
Професійне форматування з мітки:
Для чистішого виведення можна додати умовне форматування:
=DATEDIF(A2,TODAY(),"Y") & IF(DATEDIF(A2,TODAY(),"Y")=1," рік, "," роки, ") & DATEDIF(A2,TODAY(),"YM") & IF(DATEDIF(A2,TODAY(),"YM")=1," місяць, "," місяці, ") & DATEDIF(A2,TODAY(),"MD") & IF(DATEDIF(A2,TODAY(),"MD")=1," день"," днів")Це правильно обробляє однину/множину (наприклад, "1 рік" проти "2 років").
Спосіб 3: обчисліть вік на певну дату
Іноді потрібно обчислити вік на певну дату, а не на сьогоднішній день, наприклад, вік на момент події, вік на момент реєстрації або вік на момент реєстрації дата.
Формула:
=DATEDIF(A2, B2, "Y")Де:
A2= дата народженняB2= контрольна дата (дата події, дата реєстрації, тощо)
Приклад: вік працівника при наймі дата
Ім’я | Дата народження | Дата найму | Вік Найміть |
|---|---|---|---|
Джона Сміт | 1988-05-20 | [[[ TAG_369]]]=DATEDIF(B2, C2, "Y") | |
Джейн Доу | 1992-11-15 | [[[T AG_387]]]=DATEDIF(B3, C3, "Y") |
Повна розбивка за конкретним дата:
=DATEDIF(A2,B2,"Y") & " роки, " & DATEDIF(A2,B2,"YM") & " місяці, " & DATEDIF(A2,B2,"MD") & " днів"Метод 4: YEARFRAC – вік із десятковими знаками
Якщо вам потрібен вік як десяткове число (поширене у фінансових розрахунках, актуарній роботі чи наукових додатках), використовуйте YEARFRAC.
Формула:
=YEARFRAC(A2, СЬОГОДНІ(), 1)Приклад результату: 35,87 (тобто 35 років і приблизно 10,5 місяців)
Основні варіанти (третій параметр):
Метод | Найкращий для | |
|---|---|---|
0 | США 30/360 | Фінансові розрахунки (США) |
1 [[[TAG _465]]] | Фактичний/фактичний | Більшість точні за віком обчислення |
2 [[ [TAG_479]]] | Фактичний/360 | Банківська справа обчислення |
3 | [[[TAG_494]] ]Ігнорує високосні роки | |
4 | європейський 30/360 | Фінансові розрахунки (ЄС) |
Рекомендація: Використовуйте 1 (фактичний/фактичний) для обчислення віку - це найточніше.
Щоб отримати лише цілу частину:
=INT(YEARFRAC(A2, TODAY(), 1))Щоб отримати вік, округлений до одного десяткового:
=ROUND(YEARFRAC(A2, TODAY(), 1), 1)Метод 5: обчислення віку для кількох рядків
Під час роботи зі списками людей (працівників, студентів, клієнтів) вам потрібні ефективні способи обчислення віку для всіх у один раз.
Крок 1. Налаштуйте дані
A | [[ [TAG_562]]]B | C | [[[TAG_569 ]]]
|---|---|---|
Ім’я | Дата народження | Вік |
Аліса Джонсон | 1985-03-22 | [[[TAG _593]]]|
Боб Вільямс | 1990-07-14 | [[[TAG _607]]]|
Керол Девіс | 1978-11-30 | [[[TAG_6 21]]]|
Девід Коричневий | 1995-02-08 | [ [[TAG_636]]] |
Крок 2: Введіть формулу в перший рядок
У клітинку C2 введіть:
=DATEDIF(B2, TODAY(), "Y")Крок 3: скопіювати
Вибрати C2
Двічі клацніть маленький квадрат у нижньому правому куті (маркер заповнення)
Excel автоматично копіює формулу в усі рядки з дані
Використання таблиць для автоматичного розширення:
Виберіть свої дані діапазон (A1:C5)
Натисніть Ctrl+T, щоб створити таблицю
Введіть формулу в перші дані row стовпця "Вік"
Excel автоматично застосовує його до всіх рядків і нових рядків, які ви додаєте пізніше
Формула вікових категорій:
Щоб групувати вікові категорії в категорії (корисно для демографічних показників аналіз):
=IF(DATEDIF(B2,TODAY(),"Y")<18,"Minor",IF (DATEDIF(B2,TODAY(),"Y")<65,"Adult","Senior"))Бонус: Днів до наступного дня народження
Популярний варіант використання: нагадування про день народження або "дні до дня народження" обчислення.
Формула:
=DATE(YEAR(TODAY()) + (DATE(YEAR(TODAY()),MONTH(A2),DAY(A2))Як це працює:
Будує цьогорічний день народження з дати народження
Якщо цього року день народження вже минув, додає 1, щоб отримати наступний рік
Віднімає сьогоднішню дату, щоб отримати решту днів
Приклад вихід: 47 (днів до дня народження)
Альтернатива: дата наступного дня народження
Щоб показати фактичну дату наступного день народження:
=DATE(YEAR(TODAY()) + (DATE(YEAR(TODAY()),MONTH(A2),DAY(A2))Порівняння методів Таблиця
Метод[[[ TAG_759]]] | Формула | [[[ TAG_765]]]Найкращий Для | |
|---|---|---|---|
DATEDIF (роки) |
| 35 | Простий відображення віку |
DATEDIF (повний) |
| 35 років, 10 місяців, 12 днів | Точно записи |
| [[[TAG_ 816]]]YEARFRAC |
| [[[TA G_826]]]35,87 | Фінансовий/науковий науковий |
| [[[TAG_83 6]]]INT(YEARFRAC) | [[[TAG_841] ]]=INT(YEARFRAC(A2,TODAY(),1)) | [[[TAG_845] ]]Альтернатива до DATEDIF |
[[[ TAG_857]]]Рекомендація:
У більшості випадків використовуйте DATEDIF з параметром "Y"
Для точних розподілів використовуйте DATEDIF з усіма трьома параметри
Для десяткового віку використовуйте YEARFRAC з основою 1
Поширені проблеми та рішення
Проблема: DATEDIF не відображається в автозаповнення
Рішення: Це нормально. DATEDIF - це застаріла функція, яку Microsoft ніколи офіційно не документувала. Просто введіть його вручну - він працює в усіх версіях Excel, починаючи з 2007 року.
Проблема: #VALUE! помилка
Причини:
Одна або обидві клітинки містять текст замість дати
Порожні клітинки у формулі діапазон
Рішення:
Перетворити текст на дату:
=DATEVALUE(A2)Перевірити порожні клітинки:
=IF(A2="", "", DATEDIF(A2, TODAY(), "Y"))
Проблема: негативний результат або #NUM! помилка
Причина: дата завершення передує даті початку (наприклад, майбутня дата народження або неправильні дати порядок)
Рішення:
Поміняти аргументи місцями:
=DATEDIF(B2, A2, "Y")замість=DATEDIF(A2, B2, "Y")Додати перевірку:
=IF(A2>TODAY(), "Майбутня дата", DATEDIF(A2, TODAY(), "Y"))
Проблема: у формулі замість крапки з комою коми
Причина: Ваш Excel використовує європейські налаштування мови
Рішення: Замініть коми на крапка з комою:
=ДАТАДИФ(A2; СЬОГОДНІ(); "Y")Проблема: вік зміщений на одиницю рік
Причина: Зазвичай інтерпретація формату дати проблема
Рішення:
Перевірте правильність дати у формулі панель
Повторно введіть дати у форматі ISO (РРРР-ММ-ДД)
Використовуйте DATEVALUE для явного аналізу дата
Проблема: формула працює, але відображається як текст
Рішення: Видаліть будь-який апостроф із клітинки або повторно введіть формулу без пробілів перед знаком рівності.
Excel проти Google Таблиць
І Excel, і Google Таблиці підтримують DATEDIF, але є тонкі відмінності:
Функція | Excel | Google Таблиці |
|---|---|---|
DATEDIF підтримка | Так (приховано) | Так (видно в автозаповнення) |
YEARFRAC | [[[TAG_1 037]]]Так | Так[[[TAG_104 2]]] |
Дата розбір | залежно від мови | Більше гнучкий |
| [[ [TAG_1061]]]СЬОГОДНІ() | Так[[ [TAG_1066]]] | Так [[[TAG_10 71]]] |
Google Особливі аркуші:
DATEDIF відображається в автозаповненні (на відміну від Excel)
Антаксисний аналіз дати, як правило, є більш простим випадки
Порада: Для максимальної сумісності між обома платформами завжди використовуйте:
Формат дати ISO (РРРР-ММ-ДД)
Явні функції дати, а не текст дати
DATEDIF для обчислення віку (працює однаково в обох)
Онлайн Альтернатива
Хочете не використовувати електронні таблиці? Спробуйте наш безкоштовний онлайн-калькулятор віку, щоб миттєво розрахувати точний вік у роках, місяцях, тижнях і днях. Формули не потрібні - просто введіть дату народження й отримайте точні результати.
Онлайн-калькулятор також надає:
вік у кількох одиницях (роки, місяці, тижні, днів)
Зворотний відлік наступного дня народження
День тижня, коли ви були народження
Загальна кількість днів жив
Поширені запитання
Чи точний DATEDIF для високосних років?
Так. Якщо клітинки містять належним чином відформатовані дати, Excel автоматично враховує високосні роки та різну тривалість місяців. Функція DATEDIF правильно обробляє дні народження 29 лютого та точно обчислює вік незалежно від високосного року.
Який метод найкращий: DATEDIF чи YEARFRAC?
Використовуйте DATEDIF, коли вам потрібні чисті цілі числа (роки, місяці, дні) - це стандарт для більшості бізнес- та особистих випадків використання. Використовуйте YEARFRAC, коли вам потрібні десяткові значення, як-от у фінансових розрахунках, актуарних таблицях або наукових програмах, де мають значення дробові роки.
Чи можна обчислити вік лише в місяцях?
Так. Використовуйте параметр "M" у DATEDIF:
=DATEDIF(A2, TODAY(), "M")Повертає загальну кількість повних місяців між датою народження та сьогодні.
Чому DATEDIF не відображається в автозавершенні Excel?
DATEDIF – це функція сумісності, яку Microsoft успадкувала від Lotus 1-2-3. Він ніколи не був офіційно задокументований у довідковій системі Excel, тому він не відображається в автозавершенні чи майстрі функцій. Однак він цілком функціональний і широко використовується. Просто введіть його вручну.
Як розрахувати вік між двома конкретними датами?
Замініть TODAY() посиланням на клітинку, що містить вашу ціль дата:
=DATEDIF(A2, B2, "Y")Де A2 – дата народження, а B2 – дата, за якою ви хочете обчислити вік як з.
Чи працює це в старіших версіях Excel?
Так. Функція DATEDIF доступна з Excel 97. Формули в цьому посібнику працюють у Excel 2007, 2010, 2013, 2016, 2019, 2021 і Microsoft 365.
Як обчислити вік кількох людей у один раз?
Введіть формулу DATEDIF у перший рядок стовпця свого віку, а потім перетягніть маркер заповнення вниз, щоб скопіювати його в усі рядки. Або конвертуйте свої дані в таблицю Excel (Ctrl+T), і формула автоматично застосовуватиметься до всіх рядків, у тому числі до нових, які ви додасте пізніше.
Чи можу я обчислити вік і відобразити його за допомогою спеціального форматування?
Так. Поєднайте DATEDIF із функціями TEXT і конкатенацією:
=DATEDIF(A2,TODAY(),"Y") & "y " & DATEDIF(A2,TODAY(),"YM") & "m " & DATEDIF(A2,TODAY(),"MD") & "d"Вихід: "35y 10m 12d"