Отображаем в EXCEL дробное значение лет (6,9 лет) в годах и месяцах (6 лет 10 месяцев)

history

При расчете временных интервалов, результат может получиться в годах с дробной частью (6,9 лет). Определим, сколько месяцев составляет 0,9 лет. Результат запишем в виде: 6 лет / 10 месяцев.


При расчете периода окупаемости, срока кредита и т.п. может получиться результат с дробной частью, например, 6,9 лет (ячейка А5 ). Преобразуем дробную часть года в месяцы, записав формулу в ячейке В5 =ЦЕЛОЕ(A5) & " лет / " & ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12) & " мес."

Результат будет выглядеть так: 6 лет / 10 мес . (см. файл примера ).

Для периодов времени, таких как 2,3 года, 3,4 года и т.д., будет получен неблагозвучный результат 2 лет / 3 мес . Корректный результат (2 года / 3 месяца) можно получить, используя материалы статьи Склоняем правильно - 1 год, 2 года, 5 лет .

=ЦЕЛОЕ(A5)&" "&ВПР(ОСТАТ(МАКС(ОСТАТ(ЦЕЛОЕ(A5)-11;100);9);10);{0;"год":1;"года":4;"лет"};2)&ЕСЛИ(ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12);" / "&ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12)&" месяц"&ВПР(ОСТАТ(МАКС(ОСТАТ(ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12)-11;100);9);10);{0;"":1;"а":4;"ев"};2);"")

Формула возвращает полное количество месяцев, т.е., например, значение 4,9999 будет будет преобразовано в 4 лет 11 месяцев , а не в 5 лет, что было бы логичнее. Для более точного определения промежутка времени можно воспользоваться идеями из статьи Сколько лет, месяцев, дней прошло с конкретной даты .

=ЕСЛИ(ABS(A5-ОКРУГЛ(A5;0))<0,001;ОКРУГЛ(A5;0)&" "&ВПР(ОСТАТ(МАКС(ОСТАТ(ОКРУГЛ(A5;0)-11;100);9);10);{0;"год":1;"года":4;"лет"};2);ЦЕЛОЕ(A5)&" "&ВПР(ОСТАТ(МАКС(ОСТАТ(ЦЕЛОЕ(A5)-11;100);9);10);{0;"год":1;"года":4;"лет"};2)&ЕСЛИ(ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12);" / "&ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12)&" месяц"&ВПР(ОСТАТ(МАКС(ОСТАТ(ЦЕЛОЕ((A5-ЦЕЛОЕ(A5))*12)-11;100);9);10);{0;"":1;"а":4;"ев"};2);""))

Теперь 4,999 будет будет преобразовано в 4 года 11 месяцев , а 4,9999 будет будет преобразовано в 5 лет.


Комментарии

Только для авторизованных пользователей

(только для авторизованных пользователей)

© Copyright 2013 - 2024 Excel2.ru. All Rights Reserved