Работа со временем DURATION, а не временем суток


102

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

Проблема в том, что Excel настаивает на том, что «время» означает время суток. Он не позволяет мне работать с длительностью времени . Когда я пытаюсь сказать «три минуты и шесть секунд», он неверно интерпретирует это как «три минуты и шесть секунд после полуночи », что я имел в виду совсем не так.

Я могу обойти проблему, кропотливо переведя все в секунды. Но тогда все мои графики помечены секундами, а не минутами и секундами. К тому же, неудобно печатать, =3*60+6а не просто набирать 3:06. И как только я это сделаю, я должен посмотреть на формулу, чтобы проверить, правильно ли я ввел данные [и не испортил ли формулу].

Кто-нибудь знает, как я могу заставить Excel работать с продолжительностью времени, не привязанной к определенному времени дня?


2
Excel всегда рассматривает время как время дня - вызывает ли это конкретную проблему?
JosieP 04

4
Поскольку для Excel не существует времени без даты, просто примите тот факт, что к вашему значению времени привязана нерелевантная дата. Просто отформатируйте ячейки, в которых хранится это время, чтобы не отображать дату ...
K_B 04

1
«Я могу обойти проблему» - почему вам нужно обойти это? Что конкретно не так, как вы хотите прямо сейчас? Если это выходной формат, то его можно контролировать, см. Этот связанный вопрос
AakashM

1
На самом деле я думаю, что это может быть обман, что вы скажете?
AakashM 04

Ответы:


75

Вы можете легко сделать это с обычным типом данных «Время» - просто измените формат!

Формат времени / даты Excels просто 1.0 равен 1 полному дню (начиная с 01.01.1900). Таким образом, 36 часов будут 1,5. Если вы измените формат на [h]:mm, вы увидите 36:00.

Поэтому, если вы хотите работать с длительностями, вы можете просто использовать вычитание, например

A1: Start:           36:00 (=1.5)
A2: End:             60:00 (=2.5) 
A3: Duration: =A2-A1 24:00 (=1.0)

6
И строка формата, например, [h] "hr" m "min" ss "s"которая приведет к таким вещам, как 0 hr 28 min 48 sи32 hr 21 min 37 s
Ян Бойд

5
У меня возникли проблемы с использованием [h]: mm в Excel, похоже, что формула локализована, хотя я использую английскую версию Excel 2017 с английскими формулами, например, SUM (). Я живу в Швеции и [t]: mm работал у меня. Я предполагаю, что t происходит от шведского слова (t) immar вместо (h) нашего. Надеюсь, это кому-то поможет.
mikeesouth 05

2
Как насчет общего количества дней? Мне нужно что-то вроде 134 дней, 3 часа и 4 минуты. 31 день, кажется, не считается,
Танасис Иоаннидис

2
@ThanasisIoannidis Вы правы, он может считать только до 31, поскольку он предполагает дату, а затем переходит к 1 февраля. Вы можете получить это с помощью формулы:=TEXT(A1,"0")&" day"&IF(A1>1,"s "," ")&TEXT(HOUR(A1),"0")&" hours "&MINUTE(A1)&" minutes"
Питер Альберт

4
Проблема в том, что мне не нужна формула. Я могу вычислить дни, часы и т. Д. И получить "строковое" значение, но это то, что есть. Строковое значение. Я хочу, чтобы значение базовой ячейки было десятичным числом и отображало его только как дни: часы: минуты. Мне нужна строка формата отображения, но не формула.
Thanasis Ioannidis

35

Используйте формат d "days" h:mm:ssили [h]:mm:ss, в зависимости от ваших потребностей.

Допустим, у вас есть продолжительность 30 часов 12 минут 54 секунды:

  • h:mm:ss -> 6:12:54 (некорректно для продолжительности)
  • [h]:mm:ss -> 30:12:54
  • d "days" h:mm:ss -> 1 дн. 6:12:54

Возможны вариации: мне нравятся такие d"d" h"h" mm"m" ss"s"форматы как 1д 6ч 12м 54с.


4
Проголосуйте за "[h]: mm: ss -> 30:12:54". Я не мог понять, почему «ч: мм: сс» не отображается> 24 часов.
Марк Меуэр

1
Это не сработает, если прошедшие дни больше 31 дня, так как дата будет циклически переходить к следующему месяцу, а буква d покажет дату месяца,
Клемент,

12

Пользовательский формат чч: мм правильно показывает количество часов только до 23:59, после этого вы получаете остаток за вычетом полных дней. Например, 48 часов будут отображаться как 00:00, даже если нижележащее значение верное.

Чтобы правильно отображать продолжительность в часах и секундах (меньше или больше полного дня), вы должны использовать настраиваемый формат [h]: mm; @ В этом случае 48 часов будут отображаться как 48:00.

Ура.


7
Что делает символ «@» в формате [h]:mm;@?
Pratham

1
В моем случае (я не знаю почему - у меня есть английская версия Excel), буква часа - g, а формат [g]: mm работает нормально.
Krystian

1
@Pratham Это заполнитель для ввода текста, если ячейка не содержит числа.
syockit

9

В настраиваемом формате ячейки вы можете вставить такой тип:, d "days", h:mm:ssчто даст вам результат, как 16 days, 13:56:15в ячейке Excel.

Если вы хотите отображать продолжительность в часах, используйте следующий тип [h]:mm:ss, что приведет к примерно 397: 56: 15. Контрольная проверка: 16 = (397 часов -13 часов) / 24

введите описание изображения здесь


Это не сработает, если прошедшие дни больше 31 дня, поскольку дата будет циклически переходить к следующему месяцу, а 'd' покажет дату месяца
Клемент,

@Clement: интересный момент, никогда не осознавал этого.
Jochem

3

Я не знаю, как сделать так, чтобы диаграмма пометила ось в формате «X1 мин: X2 сек», но вот еще один способ получить продолжительность в формате минут с десятичными знаками, представляющими секунды (0,5 = 30 секунд, 0,25 = 15 сек и т. Д.)

Предположим, что в столбце A у вас есть данные о времени, например, в ячейке A1 у вас есть 12:03:06, что ваши данные за 3 минуты 6 секунд неверно интерпретированы как 3:06 после полуночи, а столбец B свободен.

В ячейке B1 введите эту формулу: = МИНУТА (A1) + СЕКУНДА (A1) / 60 и нажмите Enter / return. Возьмите нижний правый угол ячейки B2 и перетащите вниз до столбца A, чтобы применить формулу ко всем данным в столбце A.

На последнем шаге обязательно выделите весь столбец B и установите для него числовой формат (приложение формулы могло автоматически установить формат времени).


1

Я нашел лучший способ решить эту проблему, используя комбинацию вышеперечисленного. Все мои ячейки были введены в пользовательском формате, чтобы отображать только «ЧЧ: ММ» - если бы я ввел «4:06» (4 минуты и 6 секунд), в поле отобразились бы числа, которые я ввел правильно, но сами данные будут представляют ЧЧ: ММ на заднем плане.

К счастью, время основано на множителях 60 (60 секунд = 60 минут). Итак, 7H: 15M / 60 = 7M: 15S - надеюсь, вы понимаете, к чему это идет. Соответственно, если я возьму свои 4:06 и разделю на 60 при работе с данными (например, чтобы суммировать мое общее время или среднее время по 100 ячейкам, я бы использовал обычные формулы СУММ или СРЕДНЕЕ, а затем разделил бы на 60 в формуле .

Пример = (СУММ (A1: A5)) / 60. Если бы мои данные находились в 5 полях отслеживания времени, это были 4:06, 3:15, 9:12, 2:54, 7:38 (представляющие для нас MM: SS, но данные в фоновом режиме на самом деле HH: MM ), затем, когда я вычисляю сумму этих 5 полей, я хочу, чтобы было 27M: 05S, но вместо этого отображается 1D: 03H: 05M: 00S. Как упоминалось выше, 1D: 3H: 5M, разделенное на 60 = 27M: 5S ... это сумма, которую я ищу.

Другие примеры этого: = (СУММ (G: G)) / 60 и = (СРЕДНЕЕ (B2: B90) / 60) и = МИН (C: C) (это прямая проверка, поэтому здесь нет необходимости / 60! ).

Обратите внимание, что ваши поля «формулы» или «вычисления» (среднее, общее время и т. Д.) ДОЛЖНЫ иметь настраиваемый формат MM: SS после того, как вы разделите на 60, поскольку в Excel по умолчанию используется формат ЧЧ: ММ (отсюда и эта проблема). Поля данных, в которые вы вводите свое время, необходимо изменить с "общего" или "числового" формата на пользовательский формат ЧЧ: ММ.

Этот процесс еще немного немного громоздкий для использования - но это не означает , что ваши данные запись по - прежнему вводится в очень простых и «правильно» отображается на экране в 4:06 (который большинство людей просмотреть , как минуты: секунды когда под Заголовок «Минуты»). Обычно при отслеживании времени требуется использовать только несколько полей для формул, таких как «лучшее время», «среднее время», «общее время» и т. Д., И они обычно не меняются после ввода формулы, поэтому быть «разовым» процессом - я использую его для своей таблицы отслеживания звонков на работе, чтобы отслеживать «средний звонок», «общее время звонка за день».


1

Допустим, вы хотите отобразить время, прошедшее с 17:00 понедельника до 14:30 следующего дня, вторника.

В ячейке A1 (например) введите дату. В A2 время. (Если вы введете 17:00, включая пробел, он будет отображаться как 17:00. Если вы хотите, чтобы день недели отображался также, то в C3 (например) введите формулу = A1, затем выделите ячейки, перейдите в раскрывающееся меню форматирования, выберите «Пользовательский» и введите dddd.

Повторите все это в ряду ниже.

Наконец, предположим, что вы хотите отобразить эту продолжительность в ячейке D2. Введите формулу = (a2 + b2) - (a1 + b1). Если вы хотите, чтобы это отображалось как «22h 30m», выберите ячейку и в меню форматирования в разделе Custom введите h «h» m «m».


0

Выделите ячейку (я) / столбец, который вы хотите использовать как Продолжительность, щелкните правой кнопкой мыши, чтобы «Форматировать ячейки». Перейдите в «Пользовательский» и найдите «ч: мм», если вы хотите ввести продолжительность в формате часов и минут. Если вы хотите также включить секунды, нажмите «ч: мм: сс». После этого вы даже можете сложить общую продолжительность.

Надеюсь это поможет.


0

В итоге я сделал следующее: вручную ввел продолжительность времени, например, 1 мин, 03 сек. Простой, но эффективный. Кажется, что Excel перезаписал все остальное, даже когда я использовал «настраиваемый формат», указанный в некоторых ответах.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.