Вычислить срок службы в экселе

Обновлено: 30.06.2024

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

В повседневной жизни вопрос «Сколько вам лет?» обычно подразумевает ответ, указывающий, сколько лет вы прожили. В Microsoft Excel вы можете создать формулу для исчисления точной продолжительности жизни в месяцах, днях, часах и даже минутах. Но давайте не будем нарушать традицию и научимся сначала считать по полным годам.

Основная формула Excel расчета для возраста в годах.

Как вы обычно определяете, сколько вам лет? Просто вычитая дату рождения из текущей. Этот традиционный подход, знакомый нам еще с детства, может также использоваться в Excel.

Если предположить, что день рождения (ДР) записан в ячейке B2, то вычислить возраст в годах можно следующим образом:

=(СЕГОДНЯ()-B2)/365

=(TODAY()-B2)/365

Первая часть выражения (СЕГОДНЯ()-B2) возвращает разницу между текущей и датой рождения в днях. А затем вы делите это на 365, чтобы получить количество лет.

Формула очевидна и легко запоминаема, однако есть небольшая проблема. В большинстве случаев мы получаем число, как показано на скриншоте ниже. Что, согласитесь, несколько непривычно и не слишком удобно.


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


Функция ЦЕЛОЕ округляет в меньшую сторону до ближайшего целого.

Округляет количество прожитых лет по стандартным правилам в зависимости от значения дробной части (более 0,5 — в большую сторону).

Округляет в меньшую сторону.

Отбрасывает дробную часть, оставляя только целое.

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

Недостатки: использование этого выражения в Экселе дает довольно точные результаты, но не безупречные. Деление на среднее число дней в году в большинстве случаев работает нормально, но иногда все же показывает неверный возраст. Например, если кто-то родился 29 февраля, а сейчас 28 февраля, программа сделает человека на один день старше.

В качестве альтернативы вы можете использовать в знаменателе 365,25 вместо 365, поскольку каждый четвертый год состоит из 366 дней. Однако и этот подход не идеален. Например, если вы рассчитываете возраст ребенка, который еще не прожил високосный год, деление на 365,25 дает неправильный результат.

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

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

Как определить возраст с функцией ДОЛЯГОДА.

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

Синтаксис здесь следующий:

YEARFRAC (дата_начала, дата_окончания, [базис])

Первые два аргумента очевидны и вряд ли требуют какого-либо дополнительного объяснения. А вот Базис — это аргумент, который определяет основу для подсчета дней.

Чтобы составить абсолютно точную формулу, передайте в ДОЛЯГОДА следующие значения:

  • Дата_начала - дата рождения.
  • Дата_окончания - функция СЕГОДНЯ() для использования текущего момента времени.
  • Базис - используйте 1, которая предписывает Excel делить фактическое количество дней в месяце на фактическое количество дней в году. Никаких усредненных цифр типа 360 или 365 здесь не используется.

Учитывая вышеизложенное, формула Excel для расчета возраста по дате рождения выглядит следующим образом:

Предполагая, что ДР вписан в ячейку B2, выражение принимает следующий вид:


Итак, вот улучшенный вариант:


Метод округления можете выбрать сами.

Особенности применения этих функций мы уже рассмотрели выше.

Как узнать возраст в Excel при помощи РАЗНДАТ.

Еще один способ - использование функции РАЗНДАТ (DATEDIF):

дата_нач и дата_кон - две даты, разницу между которыми необходимо рассчитать,

Она может возвращать разницу в различных единицах времени, таких как годы, месяцы и дни, в зависимости от параметра, который вы задаете в аргументе:

  • Y - возвращает количество лет.
  • M - количество месяцев.
  • D - количество дней.
  • YM - возвращает месяцы, игнорируя дни и годы.
  • MD - разница в днях, игнорируя месяцы и годы.
  • YD - разница в днях, игнорируя годы.

Поскольку мы хотим подсчитать возраст в годах, мы используем параметр «Y»:

В этом примере день рождения записан в ячейке B2, и вы ссылаетесь на него в своей формуле возраста:


В этом случае дополнительная операция округления не требуется, так как РАЗНДАТ с аргументом "Y" сразу выводит количество лет.

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

Высчитывать можно не только количество лет, как это обычно принято, но и более мелкие единицы времени.

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

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

Где В2 - дата рождения.


Ну а если нужно сделать совсем красиво, используйте более сложное выражение:

=ЕСЛИ(РАЗНДАТ(B2;СЕГОДНЯ();"y");РАЗНДАТ(B2;СЕГОДНЯ();"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;СЕГОДНЯ();"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" ";)& ЕСЛИ(РАЗНДАТ(B2;СЕГОДНЯ();"ym");РАЗНДАТ(B2;СЕГОДНЯ();"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(B2;СЕГОДНЯ();"ym")-1; 11);"[<1]ц;[<4]ца;цев")&" ";)& ЕСЛИ(РАЗНДАТ(B2;СЕГОДНЯ();"md");РАЗНДАТ(B2;СЕГОДНЯ();"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;СЕГОДНЯ();"md")-11;100);9); 10);"[<1]ень;[<4]ня;ней");)

И вот что получится:


Более подробно об использовании функции РАЗНДАТ читайте в материале о расчете разности между датами в Excel.

Сколько вам будет на определённую дату?

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

Кстати, аналогичным образом можно определять и величину трудового стажа.

Итак, вот как это может выглядеть:


=ЕСЛИ(РАЗНДАТ(B2;C3;"y");РАЗНДАТ(B2;C3;"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;C3;"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" ";)& ЕСЛИ(РАЗНДАТ(B2;C3;"ym");РАЗНДАТ(B2;C3;"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(B2;C3;"ym")-1; 11);"[<1]ц;[<4]ца;цев")&" ";)& ЕСЛИ(РАЗНДАТ(B2;C3;"md");РАЗНДАТ(B2;C3;"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;C3;"md")-11;100);9); 10);"[<1]ень;[<4]ня;ней");)

Сколько вам будет лет в определенный год?

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

Допустим, вы работаете с медицинской базой данных, и ваша цель – выяснить, сколько лет пациенту на момент последнего полного медицинского обследования.

Если предположить, что ДР указан в столбце B, начиная со строки 2, а год последнего медицинского осмотра находится в столбце C, то расчет выглядит следующим образом:

Поскольку точный срок медицинского осмотра не определен, вы используете функцию ДАТА с произвольным аргументом дня и месяца, например, DATА(C3; 1; 1).


Функция ДАТА извлекает номер года из ячейки С2, создает полную дату, используя введенные вами номера месяца и дня (в этом примере 1 января), и передает ее в РАЗНДАТ. В результате вы получаете сумму прожитых пациентом лет по состоянию на 1 января определенного года.

Узнайте дату, когда человек достигает N лет

Предположим, ваш друг родился 21 марта 1974 года. Как вам определить, когда ему исполняется 50 лет? Обычно вы просто добавляете 50 лет к ДР человека. В Excel вы делаете то же самое, используя ДАТА:

Где B2 - день рождения.

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

Калькулятор возраста для Excel

Пользователям надстройки Ultimate Suite не нужно беспокоиться о создании своего собственного калькулятора возраста в Excel — это всего лишь пара щелчков мышью:


Формула мгновенно вставляется в выбранную ячейку, и вы можете дважды щелкнуть маркер заполнения, чтобы скопировать его вниз по столбцу.

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

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

Либо вовсе не добавляйте текст и получите возраст в виде текста «лет/месяцев/дней» (см. ячейку B7 на скриншоте выше).

Если вы хотите избавиться от нулевых единиц, таких как «0 дней», установите флажок «Не показывать нулевые значения».

Также вы можете более подробно узнать о мастере даты и времени здесь.

Если вам интересно протестировать этот калькулятор возраста, а также открыть для себя еще 60 надстроек для экономии времени в Excel, то можете загрузить пробную версию Ultimate Suite. Если вам понравились инструменты и вы решили получить лицензию, не пропустите это специальное предложение для читателей нашего сайта.

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

Также рекомендуем почитать о работе с датами:

Как вывести месяц из даты - На примерах мы покажем, как получить месяц из даты в таблицах Excel, преобразовать число в его название и наоборот, а также многое другое. Думаю, вы уже знаете, что дата в… Функция Excel СЕГОДНЯ — синтаксис и основные применения - Функция СЕГОДНЯ в Excel делает именно то, на что указывает ее имя - возвращает сегодняшнюю дату. Синтаксис ее настолько прост, насколько это вообще возможно - у нее вообще нет аргументов. Всякий… Как быстро вставить сегодняшнюю дату в Excel? - Это руководство показывает различные способы ввода дат в Excel. Узнайте, как вставить сегодняшнюю дату и время в виде статической метки времени или динамических значений, как автоматически заполнять столбец или строку… Количество рабочих дней между двумя датами в Excel - Довольно распространенная задача: определить количество рабочих дней в период между двумя датами – это частный случай расчета числа дней, который мы уже рассматривали ранее. Тем не менее, в Excel для… Как посчитать количество дней между датами в Excel? Примеры и советы. - Из этого обзора вы узнаете несколько быстрых и простых способов подсчета, сколько дней проходит между двумя датами в Excel. Вам интересно, сколько составляет разница в днях, месяцах и годах между… Как преобразовать текст в дату в Excel или извлечь ее из сложной фразы? - Сейчас вы научитесь использовать функции Excel для преобразования текста в дату. Вы также узнаете, как это сделать без использования формул. Поскольку Excel - не единственное приложение, которое вы используете, иногда…

Спасибо что посетили мой блог! Если Вы работаете с Microsoft Excel, надеюсь, это принесет Вам пользу. Блог предназначен для пользователей Microsoft Excel, которые уже имеют навыки в работе, научились использовать формулы и сводные таблицы, имеют навыки работы с базами данных. В блоге рассматриваются нестандартные приемы работы, которые мало или вообще не описаны в учебниках, а так же не столько сами формулы, сколько применение их комбинаций для решения поставленных задач.

суббота, 12 ноября 2011 г.

Срок службы агрегата

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

Помогите, пожалуйста, решить следующую проблему.

Есть некий агрегат. Дата выпуска агрегата - 25.03.1987 г. Срок службы, например, 35 лет, т.е. - до 25.03.2022 г.

- сколько агрегат отработал с даты выпуска (гг., мм.) до сегодняшнего дня

- остаток срока службы на сегодняшнюю дату (гг., мм.), т.е. сколько осталось до 25.03.2022 г.

Спасибо заранее за оказанную помощь."

Решение указанной проблемы не представляет особой сложности. Придумывать ничего не надо. Достаточно взять дату начала службы агрегата, конца срока службы агрегата и текущую дату. Вычесть одно из другого и получим искомый результат.

Однако вопрос задан и на него надо отвечать, тем более, что человек ищет, как автоматизировать и облегчить работу с помощью глубоко уважаемого мной Excel! А это, есть ХОРОШО.

И так, рисуем табличку.

срок службы агрегата

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

Отсчет даты в Excel ведется с 1900 года, поэтому от полученного года надо отнимать "1900"

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

Чтобы цифры в ячейках были "красивые", указанным ячейкам надо задать числовой формат.

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

Расчет срока годности с помощью формул Excel

Мы можем легко применять формулы для расчета срока годности в Excel. Например, дата начала - 8 в ячейке A14, а срок действия - 2015 месяца, здесь я посоветую вам рассчитать дату истечения следующим образом:

1. Выберите пустую ячейку, введите в нее формулу ниже, а затем перетащите маркер заполнения в нужный диапазон.



2. Иногда рассчитанные даты истечения срока могут не отображаться в формате даты. Если да, продолжайте выбирать рассчитанные даты истечения срока действия и нажмите кнопку Главная > Формат номера выпадающий список> Короткое свидание or Длинное свидание. Смотрите скриншот:

Теперь рассчитанные даты истечения срока действия отображаются в правильном формате.

Заметки:

1. В формуле = EDATE (B3,3), 3 означает «3 месяца».

2. Иногда срок действия может не измеряться месяцем, например 45 дней, 2 года или 10 недель. В этих условиях рассчитайте срок годности, используя соответствующие формулы в таблице ниже:

Нет. Срок действия Формула Срок действия визы
1 45-дневный = B3 + 45 9/28/2015
2 3 месяца = ДАТА (B3,3) 11/14/2015
3 2 лет = ДАТА (ГОД (B3) + 2; МЕСЯЦ (B3), ДЕНЬ (B3)) 8/14/2017
4 10 недель = B3 + 10 * 7 10/23/2015

Рассчитать срок годности с помощью Kutools for Excel

Kutools for Excel's Помощник по дате и времени функция также предоставляет довольно простой способ быстро рассчитать срок годности в Excel. Пожалуйста, сделайте следующее:

Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now


1. Выберите пустую ячейку для определения даты истечения срока действия и щелкните значок Kutools > Помощник по формулам> Помощник по дате и времени для включения этой функции.


2. В открывшемся диалоговом окне Помощник по дате и времени отметьте Добавить в разделе Тип укажите дату начала в поле Введите дату или выберите ячейку форматирования даты поле, укажите срок действия, который вам нужен, и нажмите кнопку OK кнопку.

Внимание: В моем примере я предполагаю, что срок действия составляет 3 месяца, поэтому я ввожу 3 в поле «Месяц» в диалоговом окне выше.


3. Продолжайте выделять ячейку формулы и перетащите ее маркер заполнения, чтобы применить эту формулу к диапазону, как вам нужно.

Эта коллекция формул также предоставляет формулы для расчета даты истечения срока, если срок действия измеряется годом, неделей, днями и т. Д. См. Следующие снимки экрана:


Если срок годности 2 года:


Если срок годности 26 недель:


Если срок действия 180 дней:


Если срок годности составляет 1 год, 6 месяцев и 20 дней:

Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now

Статьи по теме:

Добавить / вычесть дни / месяцы / годы до даты в Excel
В этой статье представлены 7 решений для добавления или вычитания дней, недель, месяцев, лет или комбинации лет / месяцев / дней к дате в Excel.

Рассчитать дату выхода на пенсию по дате рождения в Excel
Предположим, сотрудник выйдет на пенсию в возрасте 60 лет, как вы можете рассчитать дату выхода на пенсию с даты рождения в Excel?

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

Самый простой способ вычисления возраста или трудового стажа реализуется с помощью функции =РАЗНДАТ(). Эта таинственная функция долгое время не была описана в справке Excel. Более того ее нет ни в одном списке формул, поэтом чтобы использовать эту функцию необходимо вводить только вручную в строку формул или непосредственно в саму ячейку. Несмотря на это она доступна еще с 2000-го года версий Excel и прекрасно справляется со своей основной задачей.

Примеры формул с использованием функции РАЗНДАТ в Excel

Благодаря функции РАЗНДАТ легко выполнить сложные расчеты для сравнения дат. Ведь главная сложность заключается в, том что раз в 4 года наступает високосный год и тогда количество дней в году изменяется с 365 на 366.

Чтобы вычислить возраст от даты рождения с помощью функции РАЗНДАТ используйте формулу подобную на эту:

Пример 1.

Для расчета трудового стажа примените такую формулу:

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

  1. Начальная дата.
  2. Конечная дата.
  3. Формат даты – в какой единице измерения времени посчитать и отобразить разницу между начальной и конечной датой ("y" – год, "m" – месяц, "d" – день и др.).

Список всех форматов отображения разницы между датами приведен в следующей таблице:

№ п/пКод форматаВозвращаемая единица измерения времени
1"y"Количество полных лет в заданном периоде.
2"m"Количество полных месяцев между двумя датами.
3"d"Количество дней.
4"md"Разница в остатке дней между начальной и конечной датой без учета лет и месяцев.
5"ym"Количество оставшихся месяцев между датами без учета лет и дней.
6"yd"Разница в остатке дней между начальной и конечной датой без учета только лет.


Сразу стоит отметить что 3-тий вариант формата особо не понадобиться так как при обычном математическом вычитании от младшей даты старшей мы получаем тот же результат в днях. Например, 2 способа чтобы узнать сколько прошло дней между двумя датами:

без РАЗНДАТ.

Ведь в Excel, как и во всех других программах, входящих в пакет MS Office, используется система 1900 для нумерации дат. И каждая дата — это число дней, прошедших от 01.01.1900г.

Особое внимание требуют 4-й, 5-й, 6-й коды. Данные коды позволяют получить остатки месяцев неполных лет и остатки дней с неполных месяцев. Их принцип действия легче показать на примере чем описать. Обратите внимание как ведет себя функция с этими кодами в ее третьем аргументе.

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

срок беременности от даты зачатия.

А чтобы рассчитать дату зачатия по родам нам не нужно прибегать к функции РАЗНДАТ:

рассчитать дату зачатия по родам.

Пример более сложной формулы для РАЗНДАТ в комбинации с другими функциями для преобразования дробной части числа лет в месяцы и дни:

число лет в месяцы и дни.

Как посчитать сколько пройдено неполных лет между двумя датами в Excel?

Существуют и другие способы создания формул для вычисления разницы между датами без использования функции РАЗНДАТ:

ДОЛЯГОДА.

Теперь если нам нужно учитывать и неполные года эксплуатации автомобиля нам нужно использовать другую формулу:

учитывать и неполные года.

Как видно на примере функция РАЗНДАТ не решает любые вычислительные задачи с датами. Иногда следует прибегать к другим узконаправленным функциям.

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

РАЗДАТ(нач_дата; кон_дата; единица)
Вычисляет количество дней, месяцев или лет между двумя датами.

Как посчитать стаж в Excel?

Предположим, что у нас есть таблица с датами начала и окончания работы сотрудников в компании (если сотрудник еще работает в компании, то в поле с датой окончания работы вписываем формулу СЕГОДНЯ):

В результате подсчета стажа получаем:

Расчет стажа

Как посчитать стаж с перерывами в Excel?

Немного усложним задачу и представим, что нам нужно посчитать стаж работы сотрудника работающего с перерывами, т.е. за несколько периодов.

Для простоты рассмотрим, что сотрудник работал 2 периода и сначала для каждого из них рассчитаем стаж работы:

Подсчет стажа с несколькими периодами работы

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

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

Общий стаж по нескольким периодам работы

Если нужно посчитать длительность работы за 3 и более периода, то эту формулу можно модифицировать точно по такому же принципу.

Как посчитать возраст в Excel?

Предположим, что у нас есть таблица с датами рождения сотрудников в компании:

Исходные данные для подсчета возраста


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

Читайте также: