Получение или расчет возраста по дате рождения в Excel
Если у вас есть список дат рождения сотрудников на листе Excel, и вы хотите рассчитать возраст для каждого из них. В Excel есть несколько полезных функций, таких как YEARFRAC или DATEDIF, которые помогут вам быстро и легко получить возраст из даты рождения.
- Расчет возраста на основе даты рождения с помощью функции YEARFRAC
- Расчет возраста на основе даты рождения с помощью функции DATEDIF
- Расчет возраста на основе даты рождения в годах, месяцах и днях
- Расчет возраста на определенную дату в Excel
- Расчет возраста на основе даты рождения до 1900 года
- Расчет возраста на основе даты рождения от текущей или определенной даты с помощью удивительной функции
Расчет возраста на основе даты рождения с помощью функции YEARFRAC
В Excel функция YEARFRAC может помочь вам получить возраст из заданной даты рождения. Общий синтаксис следующий:
- дата_рождения: Дата дня рождения.
- СЕГОДНЯ(): Эта функция возвращает сегодняшнюю дату.
Итак, пожалуйста, используйте следующую формулу в пустой ячейке:
Затем перетащите маркер заполнения вниз к ячейкам, куда вы хотите применить эту формулу, все возрасты будут рассчитаны и отображены в виде десятичных чисел в ячейках, см. скриншот:
Совет: Результатом расчета является десятичное число при использовании функции YEARFRAC. Чтобы сделать возраст целым числом, вы должны комбинировать функцию INT следующим образом:
И вы получите возрасты в виде целых чисел:
Расчет возраста на основе даты рождения с помощью функции DATEDIF
Функция DATEDIF также может преобразовать дату рождения в возраст. Общий синтаксис следующий:
- дата_рождения: Дата дня рождения.
- СЕГОДНЯ(): Эта функция возвращает сегодняшнюю дату.
- y: Возвращает количество полных лет от даты рождения до текущей даты.
Теперь, пожалуйста, введите или скопируйте следующую формулу в пустую ячейку:
И все возрасты будут рассчитаны на основе даты рождения, см. скриншот:
Расчет возраста на основе даты рождения в годах, месяцах и днях
Если вы хотите получить точный возраст человека, например, сколько лет, месяцев и дней прошло от их даты рождения до текущей даты, вы должны объединить функции DATEIF в одну формулу следующим образом:
И затем вы получите результаты, как показано на следующем скриншоте:
Совет: Если вы хотите игнорировать 0 лет, месяцев или дней при применении вышеуказанной формулы, вы можете комбинировать функцию IF для проверки нулей. Пожалуйста, используйте эту формулу:
И затем вы получите скриншот ниже, как вам нужно, все возрасты отображаются в годах, месяцах и днях без нулевых значений:
Расчет возраста на определенную дату в Excel
Иногда вы хотели бы получить возраст от даты рождения до определенной даты вместо текущей даты. В этом случае вам просто нужно заменить функцию СЕГОДНЯ() во втором аргументе на конкретную дату. Например:
- дата_рождения: Дата дня рождения.
- конкретная_дата: Конечная дата, от которой вы хотите рассчитать возраст от даты рождения.
- y: Возвращает количество полных лет от даты рождения до текущей даты.
Пожалуйста, используйте формулу следующим образом:
И возраст будет рассчитан от даты рождения до определенной даты, как показано на следующем скриншоте:
Совет: Чтобы получить точные годы, месяцы и дни возраста, пожалуйста, используйте следующую формулу:
Расчет возраста на основе даты рождения до 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 — это ячейка с датой рождения)
Затем перетащите маркер заполнения вниз к ячейкам, где вы хотите получить возраст. Все возрасты от даты рождения до сегодняшнего дня были рассчитаны, см. скриншот:
Совет: Если вам нужно получить возраст от даты рождения до даты смерти вместо текущей даты, пожалуйста, примените следующий код:
Расчет возраста от даты рождения до 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 — это ячейка с датой смерти), чтобы получить результат, как показано на скриншоте ниже:
Расчет возраста на основе даты рождения от текущей или определенной даты с помощью удивительной функции
Kutools для Excel поддерживает удобный инструмент - Date & Time Helper, которая может помочь вам рассчитать возраст на основе даты рождения от текущей даты или определенной даты, как вам нужно, без запоминания сложных формул. Нажмите, чтобы скачать Kutools для Excel для бесплатного пробного использования!
Используемые связанные функции:
- YEARFRAC:
- Возвращает десятичное значение, представляющее доли года между двумя датами.
- СЕГОДНЯ()
- Возвращает текущее значение даты.
- ЦЕЛОЕ()
- Возвращает целую часть значения.
- DATEDIF
- Эта функция возвращает количество лет, месяцев или дней между двумя заданными датами.
Статьи о расчете возраста:
- Быстрое преобразование даты рождения в возраст в Excel
- Например, у вас есть диапазон различных данных о дате рождения в Excel, и вам нужно преобразовать дату рождения, чтобы отобразить их точное значение возраста в Excel. Как бы вы решили эту задачу?
- Расчет возраста по дате рождения в Google Sheets
- Пробовали ли вы когда-нибудь рассчитать возраст по дате рождения в Google Sheets? В этой статье я представлю вам несколько формул, которые помогут вам быстро и легко решить эту задачу.
- Расчет возраста по номеру ID в Excel
- Предположим, у вас есть список номеров ID, содержащих 13-значные числа, и первые 6 цифр — это дата рождения. Например, номер ID 9808020181286 означает, что дата рождения — 1998/08/02.
- Расчет возраста в годах, месяцах и днях по дате рождения
- Если у вас есть столбец заданных дат рождения, сможете ли вы быстро рассчитать каждый возраст на основе этих заданных дат рождения в годах, месяцах и днях или в виде десятичного числа, как показано на скриншоте ниже?
- Расчет возраста на определенную или будущую дату в Excel
- Например, у вас есть дата рождения человека, и если вам нужно рассчитать возраст этого человека на основе будущей или определенной даты, следующие методы помогут вам шаг за шагом подробно.
Лучшие инструменты для повышения производительности Office
Kutools для Excel - Помогает вам выделиться из толпы
Kutools для Excel имеет более 300 функций, гарантируя, что то, что вам нужно, находится всего в одном клике...
Office Tab - Включите работу с вкладками в Microsoft Office (включая Excel)
- Одна секунда для переключения между десятками открытых документов!
- Уменьшите сотни кликов мышью каждый день, попрощайтесь с болью в руке от использования мышки.
- Увеличивает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Привносит эффективные вкладки в Office (включая Excel), как в Chrome, Edge и Firefox.