Я имею в виду этот вопрос и соответственно этот отредактированный ответ. Есть столбец с периодами времени в минутах. Период времени три часа и две минуты будет 182 . Как условно отформатировать ячейки по формуле, чтобы получить следующие результаты?

00 minutes

11 minute

22 minutes

601 hour

1202 hours

1813 hours, 1 minute

631 hour, 3 minutes

Нужно ли делать некоторое (округленное) деление и вычисление по модулю? Или есть встроенная функция для подобных вещей?

2 ответа2

3

=IF(A1=0,"0 minutes",IF(A1>=60,FLOOR(A1/60,1) & " hour" & IF(A1>=120,"s",""),"") & IF(MOD(A1,60)>0,IF(A1>=60,", ","") & MOD(A1,60) & " minute" & IF(MOD(A1,60)>1,"s",""),""))

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

=IF(A1=0;"0 minutes";IF(A1>=60;FLOOR(A1/60;1) & " hour" & IF(A1>=120;"s";"");"") & IF(MOD(A1;60)>0;IF(A1>=60;", ";"") & MOD(A1;60) & " minute" & IF(MOD(A1;60)>1;"s";"");""))

(Примечание: там есть еще одна запятая, потому что она есть в выходной строке.)

0      0 minutes
1      1 minute
2      2 minutes
59     59 minutes
60     1 hour
61     1 hour, 1 minute
62     1 hour, 2 minutes
119    1 hour, 59 minutes
120    2 hours
121    2 hours, 1 minute
122    2 hours, 2 minutes
179    2 hours, 59 minutes
180    3 hours
181    3 hours, 1 minute
182    3 hours, 2 minutes
1439   23 hours, 59 minutes
1440   24 hours
1

Предположим, ваши данные находятся в столбце A. Запишите эту формулу в C2 и заполните ее, чтобы перевести минуты в дробные дни (как Excel хранит время):

=A2/1440

Обратите внимание, как вы также можете найти в комментариях выше, что для преобразования десятичных минут в формат времени вы можете применить эту формулу 24*60 которая дает 1440 .

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

h "hours, " m "minutes"

Обратите внимание, что в Excel время будет считаться часами только в том случае, если оно меньше целого дня, поэтому это будет работать до тех пор, пока ваше время не превышает 24 часа.

Или вы можете использовать функции HOUR и MINUTE, чтобы извлечь компоненты времени. В D2 вы можете использовать:

=HOUR(C2)&" hours, "&MINUTE(C2)&" minutes "

Ты получаешь,

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

=INT(C2)&" days, "&HOUR(C2)&" hours, "&MINUTE(C2)&" minutes "

Теперь вы получаете,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .