У меня есть таблица в Excel, в которой есть вычисляемое поле «Длительность», отформатированное в формате чч:мм:сс.
Мне интересно, возможно ли преобразовать/вывести это значение как текстовую строку также в другом столбце, например: 02:45:00 будет выведено как 2 часа 45 минут
Осмотрелся, но ничего не вижу, что может помочь. Может, это невозможно?
решение1
Вы не указываете, что вы хотите, чтобы произошло, когда нет значения - в вашем примере нет секунд, и вы ничего не отображаете для секунд. Или вы просто не упомянули об этом в своем посте, поэтому я предоставил решения для обоих случаев!
Вам нужно объединить и использовать текст
=CONCATENATE(HOUR(A1),"HRS ",MINUTE(A1),"MINS ", SECOND(A1), "SECS")
И это проверит, существуют ли часы, минуты и секунды, и покажет только если они существуют (довольно длинная формула, к сожалению)
=CONCATENATE(IF(HOUR(A4) >0, CONCATENATE(HOUR(A4), "Hr "),""), IF(MINUTE(A4)>0, CONCATENATE( MINUTE(A4),"Min "),""), IF(SECOND(A4)>0,CONCATENATE(SECOND(A4), "Sec"),""))
решение2
Вы можете использовать функции ЧАС и МИНУТА
=HOUR(A1)&"Hrs "&MINUTE(A1)&"Min"
Даже если A1 — текст, он будет проанализирован.
решение3
Самым лучшим вариантом было бы использовать функции часов и минут в Excel, а затем использовать функции конкатенации для объединения этих отдельных строк.
=CONCATENATE(HOUR(A8),"Hrs ", MINUTE(A8),"Min")
Вывод 2Hrs 45Min
для примера, который вы опубликовали.
Менее красиво разбирать ячейку по символам (но вы можете использовать функцию MID для самых разных сценариев!)
=CONCATENATE(MID(A1,1,2),"HRS ", MID(A1,4,2),"MIN")
Это выведет данные 02HRS 45MIN
для ячейки, на которую вы ссылаетесь.
решение4
Вы можете просто определить столбец для форматирования таким образом, без преобразований или вычислений.
Используйте [hh]"Hrs "mm"Min"
этот формат, и он будет отображаться так, как вы просили.