Перейти к содержимому

Получение или расчет возраста по дате рождения в Excel

Author: Xiaoyang Last Modified: 2025-08-07

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

doc-get-age-from-birthday-1


Расчет возраста на основе даты рождения с помощью функции YEARFRAC

В Excel функция YEARFRAC может помочь вам получить возраст из заданной даты рождения. Общий синтаксис следующий:

=YEARFRAC(дата_рождения, СЕГОДНЯ())
  • дата_рождения: Дата дня рождения.
  • СЕГОДНЯ(): Эта функция возвращает сегодняшнюю дату.

Итак, пожалуйста, используйте следующую формулу в пустой ячейке:

=YEARFRAC(B2,СЕГОДНЯ())

Затем перетащите маркер заполнения вниз к ячейкам, куда вы хотите применить эту формулу, все возрасты будут рассчитаны и отображены в виде десятичных чисел в ячейках, см. скриншот:

doc-get-age-from-birthday-2

Совет: Результатом расчета является десятичное число при использовании функции YEARFRAC. Чтобы сделать возраст целым числом, вы должны комбинировать функцию INT следующим образом:

=ЦЕЛОЕ(YEARFRAC(B2,СЕГОДНЯ()))

И вы получите возрасты в виде целых чисел:

doc-get-age-from-birthday-3


Расчет возраста на основе даты рождения с помощью функции DATEDIF

Функция DATEDIF также может преобразовать дату рождения в возраст. Общий синтаксис следующий:

=DATEDIF(дата_рождения, СЕГОДНЯ(), "y")
  • дата_рождения: Дата дня рождения.
  • СЕГОДНЯ(): Эта функция возвращает сегодняшнюю дату.
  • y: Возвращает количество полных лет от даты рождения до текущей даты.

Теперь, пожалуйста, введите или скопируйте следующую формулу в пустую ячейку:

=DATEDIF(B2, СЕГОДНЯ(), "y")

И все возрасты будут рассчитаны на основе даты рождения, см. скриншот:

doc-get-age-from-birthday-4


Расчет возраста на основе даты рождения в годах, месяцах и днях

Если вы хотите получить точный возраст человека, например, сколько лет, месяцев и дней прошло от их даты рождения до текущей даты, вы должны объединить функции DATEIF в одну формулу следующим образом:

=DATEDIF(B2,СЕГОДНЯ(),"Y") & " Лет, " & DATEDIF(B2,СЕГОДНЯ(),"YM") & " Месяцев, " & DATEDIF(B2,СЕГОДНЯ(),"MD") & " Дней"

И затем вы получите результаты, как показано на следующем скриншоте:

doc-get-age-from-birthday-5

Совет: Если вы хотите игнорировать 0 лет, месяцев или дней при применении вышеуказанной формулы, вы можете комбинировать функцию IF для проверки нулей. Пожалуйста, используйте эту формулу:

=ЕСЛИ(DATEDIF(B2, СЕГОДНЯ(),"y")=0,"",DATEDIF(B2, СЕГОДНЯ(),"y")&" Лет, ")& ЕСЛИ(DATEDIF(B2, СЕГОДНЯ(),"ym")=0,"",DATEDIF(B2, СЕГОДНЯ(),"ym")&" Месяцев, ")& ЕСЛИ(DATEDIF(B2, СЕГОДНЯ(),"md")=0,"",DATEDIF(B2, СЕГОДНЯ(),"md")&" Дней")

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

doc-get-age-from-birthday-6


Расчет возраста на определенную дату в Excel

Иногда вы хотели бы получить возраст от даты рождения до определенной даты вместо текущей даты. В этом случае вам просто нужно заменить функцию СЕГОДНЯ() во втором аргументе на конкретную дату. Например:

=DATEDIF(дата_рождения, конкретная_дата, "y")
  • дата_рождения: Дата дня рождения.
  • конкретная_дата: Конечная дата, от которой вы хотите рассчитать возраст от даты рождения.
  • y: Возвращает количество полных лет от даты рождения до текущей даты.

Пожалуйста, используйте формулу следующим образом:

=DATEDIF(B2, C2, "y")

И возраст будет рассчитан от даты рождения до определенной даты, как показано на следующем скриншоте:

doc-get-age-from-birthday-7

Совет: Чтобы получить точные годы, месяцы и дни возраста, пожалуйста, используйте следующую формулу:

=DATEDIF(B2, C2,"Y") & " Лет, "& DATEDIF(B2,C2,"YM") & " Месяцев, "&DATEDIF(B2,C2, "MD") & " Дней"

doc-get-age-from-birthday-8


Расчет возраста на основе даты рождения до 1900 года

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

1. Нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Затем нажмите Вставка > Модуль, затем скопируйте следующий код VBA в окно Модуля.

Расчет возраста от даты рождения до 1900 года до сегодняшнего дня:

Function AgelnNow(ByVal xDate As Variant)
Dim xIA As Integer
xIA = 0
On Error Resume Next
xIA = DateDiff("yyyy", xDate, Now())
If (Month(Now()) < Month(xDate)) Or (Month(xDate) = Month(Now())) Then
If (Day(Now()) < Day(xDate)) Then
xIA = xIA - 1
End If
End If
If xIA = -1 Then
AgelnNow = "Error"
Else
AgelnNow = xIA
End If
End Function

3. Затем введите следующую формулу в пустую ячейку: =AgelnNow(A2) (A2 — это ячейка с датой рождения)

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

doc-get-age-from-birthday-9

Совет: Если вам нужно получить возраст от даты рождения до даты смерти вместо текущей даты, пожалуйста, примените следующий код:

Расчет возраста от даты рождения до 1900 года до даты смерти:

Function Age(ByVal StartDate As Variant, ByVal EndDate As Variant)
    Dim xIA As Integer
    xIA = 0
    On Error Resume Next
    xIA = DateDiff("yyyy", StartDate, EndDate)
    If (Month(EndDate) < Month(StartDate)) Or (Month(StartDate) = Month(EndDate)) Then
        If (Day(EndDate) < Day(StartDate)) Then
            xIA = xIA - 1
        End If
    End If
    If xIA = -1 Then
       Age = "Error"
    Else
        Age = xIA
    End If
End Function

И используйте эту формулу: =Age(A2,B2) (A2 — это ячейка с датой рождения, а B2 — это ячейка с датой смерти), чтобы получить результат, как показано на скриншоте ниже:

doc-get-age-from-birthday-10


Расчет возраста на основе даты рождения от текущей или определенной даты с помощью удивительной функции

Kutools для Excel поддерживает удобный инструмент - Date & Time Helper, которая может помочь вам рассчитать возраст на основе даты рождения от текущей даты или определенной даты, как вам нужно, без запоминания сложных формул. Нажмите, чтобы скачать Kutools для Excel для бесплатного пробного использования!


Используемые связанные функции:

  • YEARFRAC:
  • Возвращает десятичное значение, представляющее доли года между двумя датами.
  • СЕГОДНЯ()
  • Возвращает текущее значение даты.
  • ЦЕЛОЕ()
  • Возвращает целую часть значения.
  • DATEDIF
  • Эта функция возвращает количество лет, месяцев или дней между двумя заданными датами.

Статьи о расчете возраста:

  • Расчет возраста по дате рождения в Google Sheets
  • Пробовали ли вы когда-нибудь рассчитать возраст по дате рождения в Google Sheets? В этой статье я представлю вам несколько формул, которые помогут вам быстро и легко решить эту задачу.
  • Расчет возраста по номеру ID в Excel
  • Предположим, у вас есть список номеров ID, содержащих 13-значные числа, и первые 6 цифр — это дата рождения. Например, номер ID 9808020181286 означает, что дата рождения — 1998/08/02.

Лучшие инструменты для повышения производительности Office

Kutools для Excel - Помогает вам выделиться из толпы

🤖 KUTOOLS AI Помощник: Революционизируйте анализ данных на основе: Интеллектуального Выполнения   |  Генерация Кода  |  Создание Пользовательских Формул  |  Анализ Данных и Генерация Диаграмм  |  Вызов Расширенных Функций
Популярные функции: Найти, Выделить или Отметить дубликаты  |  Удалить пустые строки  |  Объединить столбцы или ячейки без потери данных  |  Округлить без формулы ...
Супер VLookup: Множественные критерии  |  Множественные значения  |  По нескольким листам  |  Распознавание нечетких соответствий...
Расширенный раскрывающийся список: Простой выпадающий список  |  Зависимый выпадающий список  |  Выпадающий список с множественным выбором...
Управление столбцами: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить видимость скрытых столбцов  Сравнить столбцы для выбора одинаковых и разных ячеек ...
Основные функции: Сетка фокусировки  |  Дизайн листа  |  Улучшенная строка формул  |  Управление книгами и листами | Библиотека автотекста (Авто текст)  |  Выбор даты  |  Объединить данные  |  Шифровать/Расшифровать ячейки  |  Отправить письма по списку  |  Супер фильтр  |  Специальный фильтр (фильтр жирного шрифта/курсива/зачеркнутого текста...) ...
Топ-15 наборов инструментов12 Текстовых Инструментов (Добавить текст, Удалить определенные символы ...)  |  50+ Типов Диаграмм (Диаграмма Ганта ...)  |  40+ Практических Формул (Расчет возраста на основе даты рождения ...)  |  19 Инструментов Вставки (Вставить QR-код, Вставить изображение из пути ...)  |  12 Инструментов Преобразования (Преобразовать в слова, Конвертация валюты ...)  |  7 Инструментов Объединения и Разделения (Расширенное объединение строк, Разделить ячейки Excel ...)  |  ... и многое другое
Используйте Kutools на предпочитаемом вами языке – поддерживает английский, испанский, немецкий, французский, китайский и более 40 других языков!

Kutools для Excel имеет более 300 функций, гарантируя, что то, что вам нужно, находится всего в одном клике...


Office Tab - Включите работу с вкладками в Microsoft Office (включая Excel)

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите сотни кликов мышью каждый день, попрощайтесь с болью в руке от использования мышки.
  • Увеличивает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Привносит эффективные вкладки в Office (включая Excel), как в Chrome, Edge и Firefox.