Sunduck Пользователь Сообщений: 12 |
При распределении на возрастные группы столкнулся с проблеммой не могу добавить в фильтрацию дополнительный параметр по которому идет распределение(сортировка) конечные данные не получаются. Прикрепленные файлы
|
Vik_tor Пользователь Сообщений: 1927 |
И вам здрастье, во-первых не распределение, а подсчет, во-вторых, вы же уже вычислили возраст, зачем второй раз. Просто счетеслимн() |
Sunduck Пользователь Сообщений: 12 |
Прошу прощения за невоспитанность. Здравствуйте! |
Vik_tor Пользователь Сообщений: 1927 |
|
copper-top Пользователь Сообщений: 1051 |
#5 23.03.2017 18:58:10 вот еще
а так не подойдет? под каждое условие доп. столбец. другого не придумал сам только учусь. Прикрепленные файлы
Изменено: copper-top — 27.03.2017 10:43:37 |
||
Sunduck Пользователь Сообщений: 12 |
Vik_tor, copper-top, нет к сожалению так не подойдёт… в примере уточнил, к сожалению считаться люди должны не по возрасту, а по году рождения. Прикрепленные файлы
|
Владимир Пользователь Сообщений: 8196 |
Вставляйте в J3 и растягивайте вниз: «..Сладку ягоду рвали вместе, горьку ягоду я одна.» |
Sunduck Пользователь Сообщений: 12 |
К сожалению тоже не подойдет. сортировка должна быть по двум параметрам, по возрасту и по наличию хобби, Например: |
Z Пользователь Сообщений: 6111 Win 10, MSO 2013 SP1 |
#9 27.03.2017 10:24:02
Покупатель/Заказчик всегда прав! Когда он ПОКУПАЕТ или ЗАКАЗЫВАЕТ! Так, мо быть, вам, действительно более толково подготовить ТС — как ЛЬЗЯ и НИЗЯ, да и с заказом в раздел «»Работа»?! «Ctrl+S» — достойное завершение ваших гениальных мыслей!.. |
||
Sunduck Пользователь Сообщений: 12 |
Кнопка цитирования не для ответа [МОДЕРАТОР] у меня в первом варианте в первой ячейке примера в той таблице в которой всё считается стоит формула, я не могу понять почему она не считает правильно, переставил аргументы, но всё равно получается какашка. а на счет работы, к сожалению мне за неё не платят, чтоб выставлять в этот раздел… Изменено: Sunduck — 27.03.2017 10:44:15 |
Андрей VG Пользователь Сообщений: 11878 Excel 2016, 365 |
#11 27.03.2017 10:58:29 Доброе время суток.
И в чём аргумент? Тогда не делайте, если это не ваша должностная обязанность. Прикрепленные файлы
|
||
Sunduck Пользователь Сообщений: 12 |
Андрей VG, к сожалению это тоже не подойдёт…люди должны делиться по группам (наличие хобби и возрастной диапазон) а в вашем примере разделение только по возрасту. |
Z Пользователь Сообщений: 6111 Win 10, MSO 2013 SP1 |
#13 27.03.2017 15:11:40
Вы через строчки читаете или же лишь бы отмахнуться?! Прикрепленные файлы
Изменено: Z — 27.03.2017 15:26:04 «Ctrl+S» — достойное завершение ваших гениальных мыслей!.. |
||
Андрей VG Пользователь Сообщений: 11878 Excel 2016, 365 |
#14 27.03.2017 16:33:44
Ещё раз повторю вопрос — тогда зачем и для кого вы это делаете? Работы по должностным обязанностям нет? |
||
Sunduck Пользователь Сообщений: 12 |
#15 28.03.2017 08:47:10 Андрей VG, вот представьте, у вас 5 гос учреждений которые ведут отчетность, когда вы пришли туда там всё делалось на коленке, вы такой же рядовой сотрудник. На все увещевания, о том, что надо как то систематизировать отчетность вам говорят ерунда, главное чтоб все были при деле. Само формирование отчетности занимает несколько дней у вас лично, а вы знаете что можно делать всё гораздо проще, и что бы вы сделали, при том, что вам всё равно не заплатят за то что вы ускорите свою работу.
нет не лишь бы, у вас объём слишком большой. да и со сводными я пока не знаком, только учусь. Сама конечная таблица будет примерно на тысячу имён, так что любое дополнение не желательно. Изменено: Sunduck — 28.03.2017 08:48:40 |
||
Андрей VG Пользователь Сообщений: 11878 Excel 2016, 365 |
#16 28.03.2017 09:09:34 Доброе время суток.
Всего лишь нужно добавить информацию по хобби. Я в примере ориентировался на ваше представление результата. Переделал пример — не проблема для Power Pivot (изучить никогда не поздно).
То есть формирование отчётности является вашей должностной обязанностью. Естественно, что средства создания отчётности никогда не описываются в должностных обязанностях. Так что изучите Power Pivot (посоветовал бы ещё и Power Query, или всё в одном флаконе Power BI Desktop) и будет достаточно много времени для изучения чего-нибудь ещё, вместо «творческой» ручной работы по составлению отчётов. Прикрепленные файлы
|
||||
доп. столбцы Изменено: copper-top — 28.03.2017 13:00:43 |
|
copper-top Пользователь Сообщений: 1051 |
#18 28.03.2017 11:03:49
допустим на формирование отчетности на коленке уходит, к примеру, пять дней. могу выполнить систематизировано за час, но начальство без работы на эти пять дней не оставит. я бы выбрал отчет на коленке. конешно, лучше договориться выполнить эту работу дома, и дома выполнить автоматом. Изменено: copper-top — 28.03.2017 11:12:57 |
||
Sunduck Пользователь Сообщений: 12 |
copper-top,А если вы хотите потратить это время с толком на работе, вместо того чтобы сидеть и высчитывать в ручную? Другую то работу кроме отчетности никто не убирал. а вообще чтобы было проще понять то отчетов у нас еженедельный, ежемесячный квартальный полугодовой и ежегодный, кроме того они еще и подразделяются… Вообще почитал то что написал, проще уволиться… |
copper-top Пользователь Сообщений: 1051 |
#20 28.03.2017 14:01:35
и это все на коленке зато при работе… не то что у меня. за 2015 и 2016 семь недель работы.
Изменено: copper-top — 28.03.2017 14:05:28 |
||||
Sunduck Пользователь Сообщений: 12 |
|
copper-top Пользователь Сообщений: 1051 |
#22 31.03.2017 10:49:55 Sunduck, раз не работает — ждите другие варианты. |
Как сгруппировать по возрасту в сводной таблице?
Если у вас есть рабочий лист, содержащий данные какого-либо анкетного опроса, и вам нужно подсчитать результат на основе возрастного диапазона людей, чтобы проанализировать данные для отчета. В этом случае сводная таблица может оказать вам услугу. Вы можете создать сводную таблицу, а затем сгруппировать данные по возрасту и посчитать их. Пожалуйста, прочтите подробности этого вопроса.
Группировать по возрасту в сводной таблице
Группировать по возрасту в сводной таблице
Предположим, у вас есть следующие данные на вашем листе, и теперь вам нужно создать сводную таблицу как обычно. Пожалуйста, сделайте следующие шаги:
1. Создайте сводную таблицу, а затем добавьте Возраст как Метка строки, А Опция как Метка столбцанаконец, добавить Имя и фамилия as Значение, и вы получите сводную таблицу, как показано на скриншоте ниже:
2. Щелкните правой кнопкой мыши любую ячейку в поле «Возраст» и выберите группы из контекстного меню см. снимок экрана:
3. Затем в появившемся группирование диалоговом окне введите интервал, необходимый для группировки возрастов в By текстовое окно. В этом примере я сгруппирую по 10 годам. (По умолчанию начальный возраст и конечный возраст будут отображаться автоматически, вам не нужно делать никаких изменений.), См. Снимок экрана:
4. Затем нажмите кнопку ОК, чтобы закрыть это диалоговое окно, и данные в вашей сводной таблице будут сгруппированы по возрасту с интервалами в 10 лет следующим образом:
Статьи по теме:
Как сгруппировать по неделям в сводной таблице?
Как повторить метки строк для группы в сводной таблице?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (0)
Оценок пока нет. Оцените первым!
10 / 0 / 0 Регистрация: 08.02.2013 Сообщений: 47 |
|
1 |
|
Посчитать количество полных лет и присвоить возрастную группу11.09.2018, 21:39. Показов 5078. Ответов 3
Добрый день, форумчане! Пример: ЛИСТ1 ЛИСТ2 ЛИСТ3
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
11.09.2018, 21:39 |
Ответы с готовыми решениями: Вычислить количество дней, полных месяцев, и полных лет, прошедших между датами Посчитать сколько полных лет, месяцев и дней отделяют введенную дату от текущей Вычислить количество дней и количество полных лет между двумя датами Определить количество полных лет по дате рождения 3 |
772 / 615 / 294 Регистрация: 05.01.2014 Сообщений: 1,338 |
|
12.09.2018, 09:26 |
2 |
И постоянно на калькуляторе высчитывать исполнилось ли на сегодняший день человеку 30 лет Для определения возраста. Код 1. =РАЗНДАТ(C2;СЕГОДНЯ();"Y") Код 2. =ОТБР((СЕГОДНЯ()-C2)/365;0) Код 3. =ЦЕЛОЕ(ДОЛЯГОДА(C2;СЕГОДНЯ()))
и какая у него группа Неизвестно с какого и по какой возраст какая группа присваивается, и сколько их, что означает на Листе3 5;4;3, и еще есть непонятные моменты. Приложите фал-пример.
0 |
10 / 0 / 0 Регистрация: 08.02.2013 Сообщений: 47 |
|
12.09.2018, 15:58 [ТС] |
3 |
Забыл поставить разделитель)) 5 4 3 это оценка в зависимости от времени. Попробую еще раз уточнить условия: Все люди стареют, и с возрастом сдавать 3 километра становиться все трудней. Для этого придумали медико-возрасные группы от 1 до 7, т.е. в 1 категорию входят самые молодые от 18 до 25 лет, во вторую от 25 до 30 лет и так далее с шагом в 5 лет. и чем группа больше тем больше времени для сдачи (поблажки))). Если по 1 возрастной категории километр пробежать на отлично 3 минуты 20 секунд, то для третей группу на отлично будет к примеру 3 минуты 40 секунд, а для 5 вообще 4 минуты… На листе2 должно подсчитываться сколько полных лет на сегодняшний день и в соответствии с возрастом выставлять группы. Пример прилагаю……
0 |
772 / 615 / 294 Регистрация: 05.01.2014 Сообщений: 1,338 |
|
12.09.2018, 17:38 |
4 |
Проверяйте.
На листе3 указывается время и оценка по нормативам и группам. Подстановку по времени и оценке не сделал т.к. нет данных.
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
12.09.2018, 17:38 |
Помогаю со студенческими работами здесь Вычислить количество полных лет и дней между датами Определить возрастную группу человека Найти количество полных лет, прошедших между двумя датами Вычислить количество полных лет, прошедших между двумя датами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 4 |
На чтение 3 мин Опубликовано 13.02.2016
Часто возникает необходимость выполнить группировку в сводной таблице по заголовкам строки или столбца. Для численных значений Excel может сделать это автоматически (в том числе для дат и времени). Далее это продемонстрировано на примерах.
Содержание
- Пример 1: Группировка в сводной таблице по дате
- Пример 2: Группировка в сводной таблице по диапазону
- Как разгруппировать сводную таблицу
- Распространённые ошибки при группировке в сводной таблице
Пример 1: Группировка в сводной таблице по дате
Предположим, мы создали сводную таблицу (как на картинке ниже), которая показывает данные продаж для каждого дня первого квартала 2016 года.
Если нужно выполнить группировку данных о продажах по месяцам, то это можно сделать вот так:
- Кликните правой кнопкой мыши по левому столбцу сводной таблицы (столбец с датами) и выберите команду Группировать (Group). Появится диалоговое окно Группирование (Grouping) для дат.
- Выберите Месяцы (Month) и нажмите ОК. Данные таблицы будут сгруппированы по месяцам, как показано в сводной таблице ниже.
Пример 2: Группировка в сводной таблице по диапазону
Предположим, мы создали сводную таблицу (как на картинке ниже), которая группирует список из 150 детей по возрасту. Группы делятся по возрастам от 5 до 16 лет.
Если нужно пойти еще дальше и объединить возрастные группы в категории 5-8 лет, 9-12 лет и 13-16 лет, то можно поступить вот так:
- Кликните правой кнопкой мыши по левому столбцу сводной таблицы (столбец с возрастами) и выберите команду Группировать (Group). Появится диалоговое окно Группирование (Grouping) для чисел.Excel автоматически заполнит поля Начиная с (Starting At) и По (Ending At) минимальным и максимальным значениями из наших исходных данных (в нашем примере это 5 и 16).
- Мы хотим объединить возрастные группы в категории по 4 года, следовательно, в поле С шагом (By) вводим значение 4. Жмём ОК.Таким образом возрастные группы будут объединены в категории начиная с 5-8 лет и далее с шагом по 4 года. В итоге получится вот такая таблица:
Как разгруппировать сводную таблицу
Чтобы разгруппировать значения в сводной таблице, нужно:
- Кликнуть правой кнопкой мыши по левому столбцу сводной таблицы (столбец, содержащий сгруппированные значения);
- В появившемся меню нажать Разгруппировать (Ungroup).
Распространённые ошибки при группировке в сводной таблице
Ошибка при группировке в сводной таблице: Выделенные объекты нельзя объединить в группу (Cannot group that selection).
Иногда при попытке выполнить группировку в сводной таблице оказывается, что команда Группировать (Group) в меню не активна, или появляется окно с сообщением об ошибке Выделенные объекты нельзя объединить в группу (Cannot group that selection). Это происходит чаще всего потому, что в столбце данных в исходной таблице содержатся нечисловые значения или ошибки. Чтобы исправить это, нужно вместо нечисловых значений вставить числа или даты.
После этого кликните правой кнопкой мыши по сводной таблице и нажмите Обновить (Refresh). Данные в сводной таблице будут обновлены, и теперь группировка строк или столбцов должна быть доступна.
Оцените качество статьи. Нам важно ваше мнение:
I have 2 columns in an Excel spread sheet.
First column header is called AGE and the second column header is called Age_Group.
The ages in the AGE column are between 18 and 45.
There could be multiple rows with same age.
I am tasked with determining what age group a certain age falls into and then print out that age group.
For instance, if someone’s age is 18, I would like to use IF statement or CASE statement to determine that age 18 is between 18 and 24 and then put that value into Age_Group column as 18-24.
If age is 19, again, it will fall into the group of 18-24 in Age_Group column.
If the age in the Age column falls between 25 and 29, then they will be in Age_Group column as 25-29.
Here is an example:
AGE AGE_GROUP
18 18-24
19 18-24,
25 25-29
28 25-29
If you would be kind to share some code, I can use it to calculate the rest till we reach 45.
I am not good with Excel VBA. Any assistance with IF or CASE statement would be greatly appreciated.
Skip to content
В Excel нет специальной функции, чтобы посчитать возраст, однако существует несколько различных способов его определения на основе даты рождения. Вы узнаете несколько приемов, как рассчитать его в количестве полных лет, в годах, месяцах и днях на текущий момент или на какой-то определённый момент времени. Мы объясним преимущества и недостатки каждого способа, покажем, как создать идеальную формулу расчета возраста в Экселе и настроить ее для решения некоторых конкретных задач.
- Основная формула для расчета возраста
- Как определить возраст с функцией ДОЛЯГОДА.
- Как узнать возраст при помощи функции РАЗНДАТ
- Возраст в днях, месяцах и годах
- Сколько будет лет на определенную дату?
- Сколько вам будет в определенный год?
- Узнаём дату, когда человек достигает N лет
- Калькулятор возраста для Excel.
В повседневной жизни вопрос «Сколько вам лет?» обычно подразумевает ответ, указывающий, сколько лет вы прожили. В Microsoft Excel вы можете создать формулу для исчисления точной продолжительности жизни в месяцах, днях, часах и даже минутах. Но давайте не будем нарушать традицию и научимся сначала считать по полным годам.
Основная формула Excel расчета для возраста в годах.
Как вы обычно определяете, сколько вам лет? Просто вычитая дату рождения из текущей. Этот традиционный подход, знакомый нам еще с детства, может также использоваться в Excel.
Если предположить, что день рождения (ДР) записан в ячейке B2, то вычислить возраст в годах можно следующим образом:
=(СЕГОДНЯ()-B2)/365
=(TODAY()-B2)/365
Первая часть выражения (СЕГОДНЯ()-B2) возвращает разницу между текущей и датой рождения в днях. А затем вы делите это на 365, чтобы получить количество лет.
Формула очевидна и легко запоминаема, однако есть небольшая проблема. В большинстве случаев мы получаем число, как показано на скриншоте ниже. Что, согласитесь, несколько непривычно и не слишком удобно.
Чтобы отобразить количество прожитых лет, используйте один из предлагаемых методов округления десятичного числа до ближайшего целого:
=ЦЕЛОЕ((СЕГОДНЯ()-B2)/365)
Функция ЦЕЛОЕ округляет в меньшую сторону до ближайшего целого.
=ОКРУГЛ((СЕГОДНЯ()-B3)/365;0)
Округляет количество прожитых лет по стандартным правилам в зависимости от значения дробной части (более 0,5 — в большую сторону).
=ОКРУГЛВНИЗ((СЕГОДНЯ()-B4)/365;0)
Округляет в меньшую сторону.
=ОТБР((СЕГОДНЯ()-B5)/365;0)
Отбрасывает дробную часть, оставляя только целое.
Во всех случаях ноль в формуле означает, что в возвращаемой цифре не должно быть ни одного десятичного разряда.
Недостатки: использование этого выражения в Экселе дает довольно точные результаты, но не безупречные. Деление на среднее число дней в году в большинстве случаев работает нормально, но иногда все же показывает неверный возраст. Например, если кто-то родился 29 февраля, а сейчас 28 февраля, программа сделает человека на один день старше.
В качестве альтернативы вы можете использовать в знаменателе 365,25 вместо 365, поскольку каждый четвертый год состоит из 366 дней. Однако и этот подход не идеален. Например, если вы рассчитываете возраст ребенка, который еще не прожил високосный год, деление на 365,25 дает неправильный результат.
В целом, вычитание ДР из текущей даты прекрасно работает в обычной жизни, но не является идеальным подходом в Excel. Ведь мы здесь ожидаем получить точный ответ.
Далее мы поговорим о нескольких специальных функциях, которые безошибочно вычисляют возраст независимо от года.
Как определить возраст с функцией ДОЛЯГОДА.
Более надежный способ расчета, чем те, о которых мы говорили ранее, — это использование функции ДОЛЯГОДА (YEARFRAC в английском варианте), которая возвращает часть года, то есть количество целых дней между двумя датами.
Синтаксис здесь следующий:
YEARFRAC (дата_начала, дата_окончания, [базис])
Первые два аргумента очевидны и вряд ли требуют какого-либо дополнительного объяснения. А вот Базис — это аргумент, который определяет основу для подсчета дней.
Чтобы составить абсолютно точную формулу, передайте в ДОЛЯГОДА следующие значения:
- Дата_начала — дата рождения.
- Дата_окончания — функция СЕГОДНЯ() для использования текущего момента времени.
- Базис — используйте 1, которая предписывает Excel делить фактическое количество дней в месяце на фактическое количество дней в году. Никаких усредненных цифр типа 360 или 365 здесь не используется.
Учитывая вышеизложенное, формула Excel для расчета возраста по дате рождения выглядит следующим образом:
=ДОЛЯГОДА(дата рождения, СЕГОДНЯ (), 1)
Предполагая, что ДР вписан в ячейку B2, выражение принимает следующий вид:
=ДОЛЯГОДА(B2, СЕГОДНЯ(), 1)
Как и в предыдущем примере, результат также является десятичным числом. Чтобы исправить это, используйте любой из подходящих вам методов округления.
Итак, вот улучшенный вариант:
Метод округления можете выбрать сами.
=ЦЕЛОЕ(ДОЛЯГОДА(B2;СЕГОДНЯ();1))
=ОКРУГЛ(ДОЛЯГОДА(B3;СЕГОДНЯ();1);0)
=ОКРУГЛВНИЗ(ДОЛЯГОДА(B4;СЕГОДНЯ();1);0)
=ОТБР(ДОЛЯГОДА(B5;СЕГОДНЯ();1);0)
Особенности применения этих функций мы уже рассмотрели выше.
Как узнать возраст в Excel при помощи РАЗНДАТ.
Еще один способ — использование функции РАЗНДАТ (DATEDIF):
= РАЗНДАТ(дата_нач; дата_кон; аргумент)
где
дата_нач и дата_кон — две даты, разницу между которыми необходимо рассчитать,
Она может возвращать разницу в различных единицах времени, таких как годы, месяцы и дни, в зависимости от параметра, который вы задаете в аргументе:
- Y — возвращает количество лет.
- M — количество месяцев.
- D — количество дней.
- YM — возвращает месяцы, игнорируя дни и годы.
- MD — разница в днях, игнорируя месяцы и годы.
- YD — разница в днях, игнорируя годы.
Поскольку мы хотим подсчитать возраст в годах, мы используем параметр «Y»:
=РАЗНДАТ( дата рождения, СЕГОДНЯ(), «Y»)
В этом примере день рождения записан в ячейке B2, и вы ссылаетесь на него в своей формуле возраста:
=РАЗНДАТ(B2;СЕГОДНЯ();»Y»)
В этом случае дополнительная операция округления не требуется, так как РАЗНДАТ с аргументом «Y» сразу выводит количество лет.
Рассчитываем в днях, месяцах и годах.
Высчитывать можно не только количество лет, как это обычно принято, но и более мелкие единицы времени.
Давайте попробуем рассчитать полный возраст, который включает в себя дни, месяцы и годы.
Фактически, определение чьего-либо возраста на основе даты рождения является частным случаем расчета разницы в датах в Excel, где конечной датой является текущий момент времени. Итак, вы используете обычную функцию РАЗНДАТ:
=РАЗНДАТ(B2;СЕГОДНЯ();»Y»)&» лет, «&РАЗНДАТ(B2;СЕГОДНЯ();»YM»)&» мес., «&РАЗНДАТ(B2;СЕГОДНЯ();»MD»)&» д.»
Где В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;»YM»)&» мес., «&РАЗНДАТ(B2;C3;»MD»)&» д.»
или же —
=ЕСЛИ(РАЗНДАТ(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, то расчет выглядит следующим образом:
=РАЗНДАТ(B2;ДАТА(C2;1;1);»Y»)
Поскольку точный срок медицинского осмотра не определен, вы используете функцию ДАТА с произвольным аргументом дня и месяца, например, DATА(C3; 1; 1).
Функция ДАТА извлекает номер года из ячейки С2, создает полную дату, используя введенные вами номера месяца и дня (в этом примере 1 января), и передает ее в РАЗНДАТ. В результате вы получаете сумму прожитых пациентом лет по состоянию на 1 января определенного года.
Узнайте дату, когда человек достигает N лет
Предположим, ваш друг родился 21 марта 1974 года. Как вам определить, когда ему исполняется 50 лет? Обычно вы просто добавляете 50 лет к ДР человека. В Excel вы делаете то же самое, используя ДАТА:
=ДАТА(ГОД(B2) + 50; МЕСЯЦ(B2); ДЕНЬ(B2))
Где B2 — день рождения.
Вместо того, чтобы жестко указывать количество лет в формуле, вы можете сослаться на определенную ячейку, в которую ваши пользователи могут вводить сколько угодно лет.
Калькулятор возраста для Excel
Пользователям надстройки Ultimate Suite не нужно беспокоиться о создании своего собственного калькулятора возраста в Excel — это всего лишь пара щелчков мышью:
- Выберите ячейку, в которую вы хотите вставить формулу возраста, перейдите на вкладку «Ablebits Tools»> группу «Date & Time» и нажмите кнопку «Мастер даты и времени (Date & Time Wizard)» .
- Мастер даты и времени запустится, и вы перейдете прямо на вкладку «Возраст (Age)».
- Здесь вам нужно указать 3 параметра:
- Данные о рождении в виде ссылки на ячейку или дату в формате дд/мм/гггг.
- Рассчитывать возраст на сегодняшний день или на конкретную дату.
- Выберите, следует ли рассчитывать возраст в днях, месяцах, годах, неделях, или в полном виде (лет, месяцев, дней).
- Нажмите кнопку « Вставить формулу (Insert Formula)» .
Готово!
Формула мгновенно вставляется в выбранную ячейку, и вы можете дважды щелкнуть маркер заполнения, чтобы скопировать его вниз по столбцу.
Как вы могли заметить, формула, созданная калькулятором возраста в Excel, более сложна, чем те, которые мы обсуждали до сих пор.
К сожалению, пока русской локализации нет, но вы легко можете заменить в формуле английские слова на русские и затем использовать ее там, где это необходимо.
Либо вовсе не добавляйте текст и получите возраст в виде текста «лет/месяцев/дней» (см. ячейку B7 на скриншоте выше).
Если вы хотите избавиться от нулевых единиц, таких как «0 дней», установите флажок «Не показывать нулевые значения».
Также вы можете более подробно узнать о мастере даты и времени здесь.
Если вам интересно протестировать этот калькулятор возраста, а также открыть для себя еще 60 надстроек для экономии времени в Excel, то можете загрузить пробную версию Ultimate Suite. Если вам понравились инструменты и вы решили получить лицензию, не пропустите это специальное предложение для читателей нашего сайта.
Надеюсь, из рассмотренных нами вариантов вы сможете выбрать для себя самый наилучший и удобный, чтобы посчитать возраст человека по дате его рождения.
Также рекомендуем почитать о работе с датами: