Официальная статья о TIME () предполагает, что он должен отображаться только 24 часа. Таким образом, отображение 03:42
будет правильным. Если вы хотите работать с произвольным числом часов, минут и секунд, вы, скорее всего, не сможете использовать эту функцию, а вместо этого, например, формат ячейки.
Excel = TIME () со значениями свыше 24 часов отображается неправильно
Я пытаюсь отобразить время за 24 часа в Excel с помощью, =TIME()
но когда значения превышают 24 часа, они отображаются неправильно. Например, у меня =TIME(27;42,81;49)
должно быть 24:59. Вместо этого он отображается как 03:42. Я уже изменил формат на [чч: мм]. Это прекрасно работает при выполнении =SUM()
для 3 отдельных значений.
3 ответа на вопрос
TIME()
Функция работает, как указано. Из онлайнового руководства, первый параметр определяется: -
Требуется час . Число от 0 (ноль) до 32767, представляющее час. Любое значение больше 23 будет разделено на 24, а остаток будет считаться значением часа. Например, TIME (27,0,0) = TIME (3,0,0) = .125 или 3:00 AM.
Если вы хотите показать часы выше 23, вам нужно будет создать и отформатировать свои собственные значения, например, если часы, минуты и секунды установлены A1:C1
, установите D1
:
=A1/24+B1/1440+C1/86400
Теперь вы просто форматируете ячейку как [hh]:mm:ss
, как предложено в ответе Аганджу.
[Я оставляю ниже мое предыдущее предложение по форматированию вывода, поскольку используемые им методы могут быть полезны в случаях, не обработанных форматом Аганджу.]
В качестве альтернативы, следующее сгенерирует ячейку, отформатированную так, как вы хотите:
=TEXT(ROUNDDOWN(D1*24),"##")&":"&TEXT(ROUNDDOWN(MOD(D1*1440,60)),"##")&":"&TEXT(ROUNDDOWN(MOD(D1*86400,60)),"##")
Строго, =ROUND()
вместо этого следует использовать поле секунд =ROUNDDOWN()
, но это вызовет проблемы со значениями секунд 59,5 и выше.
Если важно ближайшее округление, то D1
сначала его нужно округлить до ближайшей секунды (1/86400), например, установив E1
:
=ROUND(D1*86400)/86400
Форматированная ячейка будет тогда:
=TEXT(ROUNDDOWN(E1*24),"##")&":"&TEXT(ROUNDDOWN(MOD(E1*1440,60)),"00")&":"&TEXT(ROUNDDOWN(MOD(E1*86400,60)),"00")
В любом случае эти формулы могут быть объединены так, чтобы исключить рабочие ячейки, но результирующие выражения будут очень сложными и трудными для понимания и поддержки.
Обычные дни имеют только 24 часа, поэтому Excel начинает отсчет с 0 снова, как на часах. Это код формата "чч: мм", который используется по умолчанию для времени
Если вы хотите, чтобы часы накапливались более 24, вам нужно использовать код соответствующего формата: "[hh]:mm"
- время [
и количество ]
часов делают их неограниченными.
Обратите внимание, что это работает и минуты - вы можете использовать "[mm]:ss"
в качестве кода формата, который будет считаться минуты навсегда.
Похожие вопросы
-
3
Мой файл заблокирован в Excel 2007, что происходит?
-
2
Есть ли способ заставить Excel 2007 автоматически восстанавливать фоновые файлы, как в MS Word?
-
1
Excel Word Wrap + исчезающий текст
-
-
1
Простое объединение / очистка с помощью Excel
-
7
Как вы поддерживаете Microsoft Excel на полной скорости, даже если у него нет фокуса окна?
-
2
Почему вы не можете копировать / вставлять изображения в Excel, но скриншоты работают?
-
3
Как синхронизировать Excel с таблицей Google Docs
-
7
Нетбук продолжает терять время
-
9
Как разделить имя, чтобы получить имя и фамилию?
-
1
Ссылки в Excel изменены после сбоя