我有一個 Excel 工作表,其中有一個計算的「持續時間」字段,格式為 hh:mm:ss
我想知道的是,是否可以在另一列中將該值轉換/輸出為文字字串,例如: 02:45:00 將輸出為 2Hrs 45Min
環顧四周,但看不到任何有幫助的東西。也許不可能?
答案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 和 MINUTE 函數
=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"
作為格式,它將按照您的要求顯示。