Назад в Блог
8 min read

Как рассчитать возраст в Excel (DATEDIF и YEARFRAC) + бесплатный шаблон

Пошаговые формулы Excel для расчета возраста по дате рождения с использованием РАЗДАТ, ДОЛЯ ГОДА и СЕГОДНЯ(). Включает практические примеры, советы по устранению неполадок и бесплатный онлайн-калькулятор возраста.

Как рассчитать возраст в Excel (DATEDIF и YEARFRAC) + бесплатный шаблон

Вычисление возраста в Excel - одна из наиболее распространенных задач, связанных с электронными таблицами, независимо от того, управляете ли вы записями сотрудников, отслеживаете дни рождения клиентов или создаете школьную базу данных. В этом подробном руководстве описаны все необходимые вам методы: от простых расчетов по годам до точной разбивки по годам, месяцам и дням.

Оглавление

  1. Перед началом: форматирование даты Основы

  2. Метод 1: DATEDIF – Возраст в полных годах

  3. Метод 2: Возраст в годах, месяцах, и дни

  4. Метод 3: Рассчитать возраст на определенную дату

  5. Метод 4: ДОЛЯ ГОДА – Возраст с десятичными дробями

  6. Метод 5: вычисление возраста для нескольких строк

  7. Бонус: дней до следующего День рождения

  8. Таблица сравнения методов

  9. Распространенные проблемы и Решения

  10. Excel и Google Таблицы

  11. Онлайн Альтернатива

  12. Часто задаваемые вопросы

Перед началом: форматирование даты Основы

Прежде чем углубляться в формулы, убедитесь, что даты отформатированы правильно. Excel различает фактические даты и текст, похожий на даты, - и эта разница имеет значение.

Как проверить, содержит ли ячейка действительное число дата:

  1. Нажмите на ячейку с вашей датой

  2. Посмотрите на строку формул - если она есть показывает число (например, 45678), это реальная дата

  3. Если отображается текст (например, «15.01.1990»), Excel воспринимает его как строка

Преобразование текста в даты:

Если ваша дата сохранена в виде текста, преобразуйте ее сначала:

=DATEVALUE(A2)

Затем отформатируйте ячейку результата как дату (щелкните правой кнопкой мыши → Форматировать ячейки → Дата).

Важно: Различные локали интерпретируют форматы даты по-разному. «02.01.2000» может означать 2 января (США) или 1 февраля (Европа). Всегда проверяйте правильность синтаксического анализа дат.

Метод 1: РАЗДАТ – возраст в полных годах

Функция РАЗДАТ – это самый простой способ рассчитать возраст в Excel. Возвращает количество полных лет между двумя датами.

Формула:

=DATEDIF(A2, TODAY(), "Y")

Где:

  • A2 = ячейка, содержащая дату рождения

  • TODAY() = текущая дата (обновления автоматически)

  • "Y" = возврат завершен лет

Пример:

[[[TA G_130]]]

A

B[[[TAG_143]] ]

Дата из Рождение

Возраст

[[[TAG_ 156]]]

1990-03-15

=DATEDIF(A2, СЕГОДНЯ(), "Y")

[[[TAG_16 8]]]22 июля 1985 г.

=DATEDIF(A3, СЕГОДНЯ(), "Y")

[[[TAG_17 8]]]2000-12-01

=DATEDIF(A4, СЕГОДНЯ(), "Y")

Результат (по состоянию на январь 2026):

[[[TA G_195]]][ [[TAG_227]]][[[TAG_2 37]]]

Дата из Рождение

Возраст

[ [[TAG_206]]]

15 марта 1990 г.

35

[[[TAG_ 216]]]

22 июля 1985[[[TAG_ 221]]]

40

01 декабря 2000 г.

[ [[TAG_232]]]

25

Примечание: РАЗНДАТ - это «скрытая» функция в Excel, она не отображается при автозаполнении, но работает отлично. Просто введите его вручную.

Метод 2: Возраст в годах, месяцах и днях

Для ситуаций, требующих точного возраста (медицинские записи, юридические документы, системы управления персоналом), вам понадобится полный разбивка.

Отдельные формулы:

Годы: =DATEDIF(A2, TODAY(), "Y")
Месяцы: =DATEDIF(A2, СЕГОДНЯ(), "ГМ")
Дни: =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 = базовая дата (дата события, дата регистрации, и т. д.)

Пример: возраст сотрудника при приеме на работу дата

[[[TAG_3 40]]][[[ TAG_369]]]

2020-03-01

[[[T AG_387]]]

15.06.2021

Имя

Дата рождения

Дата приема на работу

Возраст в Наймите

Джона Смит

20 мая 1988

=DATEDIF(B2, C2, "Y")

Джейн Доу

15 ноября 1992 г.

=DATEDIF(B3, C3, "Y")

Полная разбивка по конкретным date:

=DATEDIF(A2,B2,"Y") & " годы, " & DATEDIF(A2,B2,"YM") & " месяцы, " & DATEDIF(A2,B2,"MD") & " дней"

Метод 4: YEARFRAC – Возраст с десятичными дробями

Если вам нужен возраст в виде десятичного числа (обычно используется в финансовых расчетах, актуарной работе или научных приложениях), используйте ДОЛЯ ГОДА.

Формула:

=YEARFRAC(A2, TODAY(), 1)

Пример вывода: 35,87 (что означает 35 лет и около 10,5 месяцев)

Основные варианты (третий параметр):

[[[TAG_4 28]]][[ [TAG_434]]]

Значение

[[[TAG_494]] ]

Фактическое/365

[[[ TAG_439]]]Метод

Лучший для

0

США 30/360

Финансовые расчеты (США)

1

[[[TAG _465]]]

Факт/факт

Большинство точный по возрасту расчеты

2

[[ [TAG_479]]]

Факт/360

Банковские операции расчеты

3

Игнорируется прыжок лет

[[ [TAG_505]]]4

Европейский 30/360

Финансовые расчеты (ЕС)

Рекомендация: Использовать 1 (фактическое/фактическое) для расчета возраста - это наиболее точно.

Чтобы получить только целое число часть:

=INT(YEARFRAC(A2, TODAY(), 1))

Чтобы получить возраст, округленный до одного десятичного знака:

=ROUND(YEARFRAC(A2, TODAY(), 1), 1)

Метод 5: расчет возраста по нескольким строкам

При работе со списками людей (сотрудников, студентов, клиентов) вам нужны эффективные способы расчета возраста для всех в один раз.

Шаг 1. Настройте данные

[[[TAG _554]]][[[TAG_569 ]]][[[TAG _593]]]

[[[TAG _607]]]

[[[TAG_6 21]]]

A

[[ [TAG_562]]]B

C

Имя

Дата из Рождение

Возраст[[[TAG_581] ]]

Алиса Джонсон

22 марта 1985

Боб Уильямс

14 июля 1990 г.

Кэрол Дэвис

30 ноября 1978

Дэвид Коричневый

1995-02-08

[ [[TAG_636]]]

Шаг 2: Введите формулу в первую строку

В ячейке C2 введите:

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

Шаг 3. Скопируйте вниз

  • Выберите C2

  • Двойной щелчок маленький квадрат в правом нижнем углу (дескриптор заполнения)

  • Excel автоматически копирует формулу во все строки с помощью data

Использование таблиц для автоматического расширение:

  1. Выберите диапазон данных (A1:C5)

  2. Нажмите Ctrl+T, чтобы создать таблицу

  3. Сначала введите формулу данные роСтолбец w of Age

  4. Excel автоматически применяет его ко всем строкам, а также к новым строкам, которые вы добавляете. позже

Формула возрастных категорий:

Для группировки возрастов по категориям (полезно для демографических данных) анализ):

=IF(DATEDIF(B2,TODAY(),"Y")<18,"Minor",IF (DATEDIF(B2,TODAY(),"Y")<65,"Взрослый","Сеньор"))

Бонус: Дней до следующего дня рождения

Популярный вариант использования: напоминания о днях рождения или «дни до дня рождения» расчеты.

Формула:

=DATE(YEAR(TODAY()) + (ДАТА(ГОД(СЕГОДНЯ()),МЕСЯЦ(A2),ДЕНЬ(A2))<СЕГОДНЯ()), МЕСЯЦ(A2), ДЕНЬ(A2)) - СЕГОДНЯ()

Как это работает:

  1. Конструирует день рождения в этом году с момента рождения date

  2. Если день рождения уже прошел в этом году, добавляется 1, чтобы получить следующий год.

  3. Вычитает сегодняшняя дата, чтобы получить количество оставшихся дней

Пример вывода: 47 (дней до день рождения)

Альтернативный вариант: дата следующего дня рождения

Чтобы показать фактическую дату следующего дня рождения день рождения:

=ДАТА(ГОД(СЕГОДНЯ()) + (ДАТА(ГОД(СЕГОДНЯ()),МЕСЯЦ(A2),ДЕНЬ(A2))<СЕГОДНЯ()), МЕСЯЦ(A2), DAY(A2))

Сравнение методов Таблица

[[ [TAG_753]]][[[ TAG_765]]]

Выход

[[[TAG_845] ]]

35

Метод[[[ TAG_759]]]

Формула

Лучший Для

DATEDIF (годы)

=DATEDIF(A2,TODAY(),"Y")[ [[TAG_783]]]

35

Простой отображение возраста

DATEDIF (полный)

=DATEDIF(...) с Y, YM, MD

35 лет, 10 месяцев, 12 дней

Точный записи

[[[TAG_ 816]]]YEARFRAC

= YEARFRAC(A2,TODAY(),1)

[[[TA G_826]]]35,87

Финансы/наука актуально

[[[TAG_83 6]]]INT(YEARFRAC)

[[[TAG_841] ]]=INT(YEARFRAC(A2,TODAY(),1))

Альтернатива чтобы DATEDIF

[[[ TAG_857]]]Рекомендация:

  • В большинстве случаев используйте DATEDIF с параметром «Y»

  • Для точной разбивки используйте DATEDIF со всеми тремя параметрами

  • Для десятичных возрастов используйте YEARFRAC с основой 1

Распространенные проблемы и решения

Проблема: DATEDIF не отображается в автозаполнение

Решение: Это нормально. DATEDIF - это устаревшая функция, которую Microsoft никогда официально не документировала. Просто введите его вручную - он работает во всех версиях Excel, начиная с 2007 года.

Проблема: #VALUE! ошибка

Причины:

  • Одна или обе ячейки содержат текст вместо даты

  • Пустые ячейки в формуле диапазон

Решения ons:

  1. Конвертировать текст на дату: =DATEVALUE(A2)

  2. Проверьте наличие пустых ячеек: =IF(A2="", "", DATEDIF(A2, TODAY(), "Y"))

Проблема: отрицательный результат или #NUM! ошибка

Причина: Конечная дата предшествует начальной дате (например, будущая дата рождения или неправильные даты порядок)

Решения:

  1. Поменяйте местами аргументы: =DATEDIF(B2, A2, "Y") вместо =DATEDIF(A2, B2, "Y")

  2. Добавить проверку: =IF(A2>TODAY(), "Будущая дата", DATEDIF(A2, TODAY(), "Y"))

Проблема: в формуле вместо точек с запятой отображаются точки с запятой. запятые

Причина: В вашем Excel используются европейские региональные настройки

Решение: Замените запятые на точки с запятой:

=DATEDIF(A2; TODAY(); "Y")

Проблема: возраст указан на единицу год

Причина: Обычно интерпретация формата даты проблема

Решение:

  1. Проверьте правильность даты в формуле bar

  2. Повторно введите даты в формате ISO (ГГГГ-ММ-ДД)

  3. Использовать DATEVALUE для явного анализа даты

Проблема: формула работает, но отображается как текст

Решение: Удалите все апострофы в начале ячейки или повторно введите формулу без пробелов перед знаком равенства.

Excel vs Google Таблицы

И Excel, и Google Таблицы поддерживают формат DATEDIF, но есть некоторые тонкости. различия:

[[[TA G_1003]]][[[TAG_1 032]]]

YEARFRAC

Функция

Excel

Google Листы

DATEDIF поддержка

Да (скрыто)

Да (видно в автозаполнение)

[[[TAG_1 037]]]Да

Да[[[TAG_104 2]]]

Дата синтаксический анализ

Зависит от локали

Подробнее гибкий

[[ [TAG_1061]]]СЕГОДНЯ()

Да[[ [TAG_1066]]]

Да

[[[TAG_10 71]]]

Google Для отдельных листов:

  • DATEDIF отображается при автозаполнении (в отличие от Excel)

  • Разбор даты, как правило, более щадящий

  • То же синтаксис формулы работает в большинстве случаев

Совет: Для максимальной совместимости между обеими платформами всегда используйте:

  • формат даты ISO (ГГГГ-ММ-ДД)

  • Явные функции даты, а не текст даты

  • DATEDIF для расчета возраста (работает идентично в оба)

Альтернатива в Интернете

Предпочитаете не использовать электронные таблицы? Воспользуйтесь нашим бесплатным онлайн-калькулятором возраста, чтобы мгновенно рассчитать точный возраст в годах, месяцах, неделях и днях. Никаких формул не требуется - просто введите дату рождения и получите точные результаты.

Онлайн-калькулятор также предоставляет:

  • Возраст в нескольких единицах (годы, месяцы, недели, дней)

  • Обратный отсчет до следующего дня рождения

  • День недели, в который вы родились

  • Всего дней жил

Часто задаваемые вопросы

Точность DATEDIF для скачка лет?

Да. Если ваши ячейки содержат правильно отформатированные даты, Excel автоматически учитывает високосные годы и различную длину месяцев. Функция РАЗНДАТ правильно обрабатывает дни рождения 29 февраля и точно рассчитывает возраст независимо от високосного года.

Какой метод лучше: DATEDIF или YEARFRAC?

Используйте DATEDIF когда вам нужны чистые целые числа (годы, месяцы, дни) - это стандарт для большинства деловых и личных случаев использования. Используйте YEARFRAC, когда вам особенно нужны десятичные значения, например, в финансовых расчетах, актуарных таблицах или научных приложениях, где важны дробные годы.

Могу ли я рассчитать возраст только в месяцах?

Да. Используйте параметр «M» в DATEDIF:

=DATEDIF(A2, TODAY(), «M»)

Это возвращает общее количество полных месяцев между рождением ребенка. дата и сегодня.

Почему DATEDIF не отображается в автозаполнении Excel?

DATEDIF - это функция совместимости, унаследованная Microsoft от Lotus 1-2-3. Он никогда официально не документировался в справочной системе Excel, поэтому он не отображается в автозаполнении или мастере функций. Тем не менее, он полностью функционален и широко используется. Просто введите его вручную.

Как рассчитать возраст между двумя конкретными датами?

Замените TODAY() ссылкой на ячейку, содержащую вашу цель date:

=DATEDIF(A2, B2, "Y")

Где A2 - это дата рождения, а B2 - это дата, которую вы хотите рассчитать как возраст. из.

Это работает в старых версиях Excel?

Да. DATEDIF доступен начиная с Excel 97. Формулы в этом руководстве работают в Excel 2007, 2010, 2013, 2016, 2019, 2021 и Microsoft 365.

Как вычислить возраст нескольких людей в один раз?

Введите формулу РАЗДАТ в первой строке столбца возраста, затем перетащите маркер заполнения вниз, чтобы скопировать ее во все строки. Альтернативно можно преобразовать данные в таблицу Excel (Ctrl+T), и формула автоматически применится ко всем строкам, включая новые, которые вы добавите позже.

Могу ли я вычислить возраст и отобразить его с собственным форматированием?

Да. Объедините РАЗДАТ с функциями ТЕКСТ и конкатенацией:

=DATEDIF(A2,TODAY(),"Y") & "y" & DATEDIF(A2,TODAY(),"YM") & "m " & DATEDIF(A2,TODAY(),"MD") & "d"

Выход: "35y 10m 12d"