Ввод больших значений времени (Microsoft Excel)
Если вы отформатируете ячейку по истекшему времени (используя настраиваемый формат отображения [ч]: мм: сс), тогда Excel позволяет вам вводить часы, минуты и секунды в эту ячейку. Например, вы можете просто ввести 129: 14: 30, чтобы обозначить 129 часов, 14 минут и 30 секунд. Однако вы столкнетесь с проблемой, если попытаетесь ввести в ячейку очень большие значения времени. Когда вы пытаетесь ввести значения времени, превышающие 10 000 часов, как в 12721: 52: 45, Excel не будет анализировать запись как время, а будет рассматривать ее как текст.
Интересно то, что когда ячейка форматируется по истекшему времени с использованием [h]: mm: ss, ячейка может легко отображать прошедшее время, которое превышает 10 000 часов. Таким образом, вы можете суммировать диапазон ячеек, чтобы получить значение более 10 000 часов, но вы не можете ввести большее значение.
К сожалению, в Excel этого не избежать. Однако лучшим решением может быть переосмысление способа ввода данных. В конце концов, 10 000 часов равняются 416 дням и 16 часам — более чем год.
Вы можете легко создать столбец для ввода дней и использовать другой для неполных дней. Затем в третьем столбце можно использовать формулу для возврата истекших часов на основе двух других столбцов.
Другое решение — просто не полагаться на Excel при анализе ваших входных данных. Если у вас есть огромное количество часов для ввода (например, 32 315), вы можете ввести в ячейку следующее:
=32315/24
Excel сохраняет то, что вы вводите как формулу, но отображает правильное количество часов, минут и секунд. Если вы хотите получить более точную информацию, вы можете ввести дробную величину, которая представляет собой часть часа, представленную вашим временем. Например, 37 минут 15 секунд составляют 0,620833 часа. Таким образом, вы можете ввести часы следующим образом:
=32315.620833/24
Конечно, ввод времени таким образом может быть утомительным, особенно если вы вычислили дробную часть часа, представленную минутами и секундами. Чтобы преодолеть это, вы можете создать настраиваемую функцию, которая позволяет вам вводить часы, минуты и секунды и возвращает значение, которое легко форматируется с использованием формата прошедшего времени.
Следующая функция сделает свое дело:
Public Function RealBigTime(hr As Double, _ min As Double, sec As Double) As Double Dim hr1 As Double Dim min1 As Double Dim sec1 As Double Application.Volatile hr1 = hr / 24 min1 = min / 24 / 60 sec1 = sec / 24 / 60 / 60 RealBigTime = hr1 + min1 + sec1 End Function
После создания функции введите в ячейку что-то вроде = RealBigTime (32341,30,45). Результатом является значение, которое может быть отформатировано в формате прошедшего времени до 32341: 30: 45.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (2038) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:
link: / excelribbon-Entering_Large_Time_Values [Ввод больших значений времени]
.