Обновлено:
Как посчитать возраст в экселе
Когда в таблице сотни строк с датами рождения, считать возраст вручную – потеря времени. Excel рассчитывает возраст за секунду, нужно лишь знать правильную формулу. Разберём три способа: от самого точного до быстрого приближённого.
Как посчитать возраст в экселе по дате рождения
Для расчёта возраста нужна дата рождения и текущая дата. Если даты рождения записаны в столбце A (например, в A2), а текущая дата – в B2, формула определяет разницу между ними в годах.
Если текущую дату не хочется обновлять вручную, вместо ссылки на ячейку используют функцию СЕГОДНЯ() – она автоматически подставляет актуальную дату при каждом открытии файла.
Функция РАЗНДАТ – точный способ
РАЗНДАТ (в английской версии – DATEDIF) – специальная функция для вычисления разницы между двумя датами. Она не появляется в списке автоподсказок Excel, но работает во всех версиях.
Синтаксис:
=РАЗНДАТ(начальная_дата; конечная_дата; единица)
Параметр «единица» определяет, в чём считать результат:
| Единица | Что возвращает | Пример |
|---|---|---|
| “y” | Полные годы | 34 |
| “m” | Полные месяцы | 413 |
| “d” | Дни | 12 580 |
| “ym” | Месяцы без учёта лет | 2 |
| “md” | Дни без учёта месяцев | 14 |
| “yd” | Дни без учёта лет | 75 |
Формула для полного возраста в годах:
=РАЗНДАТ(A2; СЕГОДНЯ(); "y")
Если A2 содержит 15.03.1990, а текущая дата – 20.05.2026, результат – 36 (полных лет).
Возраст с месяцами и днями
Для развёрнутого ответа «36 лет 2 месяца 5 дней» комбинируйте три вызова:
=РАЗНДАТ(A2;СЕГОДНЯ();"y")&" лет "&РАЗНДАТ(A2;СЕГОДНЯ();"ym")&" мес. "&РАЗНДАТ(A2;СЕГОДНЯ();"md")&" дн."
Каждая часть считает свою компоненту, а символ & склеивает текст.
Функция ДОЛЯГОДА – быстрый способ
ДОЛЯГОДА (YEARFRAC) возвращает долю года между двумя датами. Чтобы получить полные годы, результат округляют вниз функцией ЦЕЛОЕ:
=ЦЕЛОЕ(ДОЛЯГОДА(A2; СЕГОДНЯ(); 1))
Третий аргумент (1) указывает базис расчёта – «фактическое/фактическое», то есть учитывается реальное число дней в году.
Метод проще РАЗНДАТ, но менее точен. При округлении доли года могут возникать ошибки ±1 год, особенно если день рождения близко к границе.
Простой способ вычитанием годов
Быстрый, но грубый вариант – вычесть год рождения из текущего года:
=ГОД(СЕГОДНЯ()) - ГОД(A2)
Проблема: формула не учитывает, наступил ли день рождения в текущем году. Человеку, родившемуся 01.12.1990, в мае 2026 формула покажет 36, хотя полных лет – 35.
Какой способ выбрать?
| Способ | Точность | Сложность | Подходит для |
|---|---|---|---|
| РАЗНДАТ | Высокая | Средняя | Полного возраста, месяцев и дней |
| ДОЛЯГОДА + ЦЕЛОЕ | Средняя | Низкая | Быстрой оценки без дней рождения |
| Вычитание ГОД | Низкая | Минимальная | Грубой прикидки |
Для корректного подсчёта возраста в экселе рекомендуем РАЗНДАТ – она единственная учитывает, прошёл ли день рождения в текущем году.
Как посчитать возраст на конкретную дату?
Если нужна не текущая дата, а определённая (например, дата события или конец отчётного периода), замените СЕГОДНЯ() на ссылку на ячейку:
=РАЗНДАТ(A2; B2; "y")
Где B2 – ячейка с целевой датой. Формат ячейки с датой должен быть «Дата», иначе Excel воспримет значение как текст и выдаст ошибку #ЗНАЧ!.
Возраст по списку дат рождения
Для таблицы с сотнями строк:
- Убедитесь, что столбец с датами рождения имеет формат «Дата» (вкладка «Главная» → «Число» → «Дата»).
- В соседнем столбце введите формулу с РАЗНДАТ.
- Протяните формулу вниз, дважды щёлкнув по маркеру заполнения (квадрат в правом нижнем углу ячейки).
Если вместо числа появляется дата (например, 01.01.1900), измените формат ячейки на «Общий» или «Числовой».
Частые ошибки и их исправление
#ЧИСЛО! – начальная дата позже конечной. Проверьте порядок: дата рождения должна быть первой.
#ЗНАЧ! – ячейка содержит текст вместо даты. Это типично при копировании данных из других программ. Преобразуйте текст в дату: выделите столбец → «Данные» → «Текст по столбцам» → выберите формат ДМГ.
Неправильный возраст – если при вычитании ГОД результат на 1 больше, значит, день рождения ещё не наступил. Используйте РАЗНДАТ вместо вычитания.
Формулы Excel могут давать неточности при работе с високосными годами и датами до 01.01.1900. Для критичных расчётов сверяйтесь с первоисточником.
Часто задаваемые вопросы
Почему РАЗНДАТ нет в списке функций Excel?
Функция РАЗНДАТ отсутствует в автоподсказках Excel – это скрытая (legacy) функция, оставленная для совместимости с Lotus 1-2-3. Она работает корректно, но вводить её приходится вручную, без помощи мастера функций.
Как посчитать возраст с точностью до месяцев и дней?
Используйте РАЗНДАТ трижды: с параметром “y” для лет, “ym” для месяцев и “md” для дней. Склейте результаты через & в одну строку, добавив поясняющий текст к каждому значению.
Что делать, если вместо результата выходит #ЧИСЛО! или #ЗНАЧ!?
Ошибка #ЧИСЛО! возникает, когда начальная дата позже конечной. Ошибка #ЗНАЧ! – когда ячейка содержит текст вместо даты. Проверьте формат ячеек и порядок дат: дата рождения должна быть раньше текущей даты.
Можно ли автоматически обновлять возраст в таблице?
Да. Вместо конкретной даты используйте СЕГОДНЯ() – функция обновляется при каждом открытии файла. Возраст будет пересчитываться автоматически без ручного вмешательства.
Какая формула точнее – РАЗНДАТ или ДОЛЯГОДА?
РАЗНДАТ точнее для полного количества лет, поскольку учитывает, прошёл ли день рождения в текущем году. ДОЛЯГОДА считает долю года, которую нужно округлять, и при округлении возможна погрешность ±1 год.
Работает ли РАЗНДАТ в Google Таблицах?
Да, функция DATEDIF полностью поддерживается в Google Таблицах с теми же аргументами. Синтаксис идентичен Excel, разница только в названии на английском.
Похожие калькуляторы и статьи
- Как в Excel посчитать процент от числа: формулы и примеры
- Как посчитать квартал по дате: калькулятор и формулы
- Как посчитать столбцы в эксель: формулы и быстрые способы (2026)
- Расчет возраста: калькулятор и формула точного определения
- Расчёт сколько лет: калькулятор возраста по дате рождения
- Как посчитать сколько лет: точные формулы и калькулятор