Я пытаюсь Экспортировать из СТАРОЙ Системы, которая сохранила Время в / Испытывают таймаут как текстовая строка в 24-часовое время.
Например, 15:00, вводится как 1500 (никакое двоеточие)
Существует ли простой способ, которым я могу преобразовать эти Значения в 12-часовое время с AM / PM?
Я преобладал над 3 000 записей - и я почти на грани ручного редактирования, поэтому нравься, что любые предложения ценятся.
Принятие значения находится в ячейке A1, используйте эту формулу:
=TIMEVALUE(LEFT(A1,LEN(A1)-2)&":"&RIGHT(A1,2))
То, что происходит, это принимает, значение принимает, чтобы быть 1 или 2 цифрами в течение часа и всегда 2 цифрами в течение минуты. Например, 1500 = 15:00, 900 = 9:00. Вы, возможно, должны отформатировать ячейку как время вместо числа.
Если у Вас будут значения, которые являются ранее, чем 1:00 и Ваши данные не имеют начальных нулей, то Вы захотите эту более сложную формулу вместо этого:
=TIMEVALUE(IF(LEN(A1)>2,LEFT(A1,LEN(A1)-2),"0")&":"&RIGHT(A1,2))
Эта формула, измененная от Dave и Tracy, произведет текстовую строку, которую Вы хотите и не требуете, чтобы Вы отформатировали ячейку:
=TEXT(LEFT(A1,LEN(A1)-2) &":"& RIGHT(A1,2), "h:mm AM/PM")
Если Вы только хотите часы, то изменяете h:mm на h.
Не абсолютно уверенный, как Ваши значения хранятся в Ваших ячейках, т.е. они дважды заключаются в кавычки? снабженный префиксом одинарную кавычку? Это будет иметь значение из-за того, как продвижение 0 обрабатывается.
Вы могли бы попробовать:
=TEXT(LEFT(A1,2) &":"& RIGHT(A1,2), "hh:mm AM/PM")
Мое ожидание состоит в том, что это будет работать на большинство записей (утренние записи могли бы быть проблемой.
В Excel 2003 эти формулы работали хорошо, пока он не поразил время без цифры часа (первый час после полуночи) затем, он произвел a #VALUE!
ошибка. Я добавил оператор IF для контакта с тем первым часом, где были только единственные или двойные пронумерованные минуты:-
=TIMEVALUE (ЕСЛИ (LEN (A1) <=2, "0: "&RIGHT (A1,2), (ОСТАВЛЕННЫЙ (A1, LEN (A1)-2) И": "&RIGHT (A1,2))))