=TEXT(SUM(IFERROR(--(SUBSTITUTE(SUBSTITUTE(B18:B25,"小时",":"),"分钟","") & ":00"),"")),"h时mm分ss秒")
将B18:B25修改为你的数据放置的区域,要求你的数据都是小时与分钟,没有秒,这样可以得到时间总和,上述公式得到的是一个字符串的结果,如果你需要数字型的结果,则在最外层加--(两个减号)
=--(TEXT(SUM(IFERROR(--(SUBSTITUTE(SUBSTITUTE(B18:B25,"小时",":"),"分钟","") & ":00"),"")),"h时mm分ss秒"))
上述两公式是数组公式,所以最后需要按ctrl+shift+回车,而不是仅仅按回车。
这样试试看:
输入:=TEXT(SUM(IFERROR(--SUBSTITUTE(SUBSTITUTE(B1:B3,"小",""),"钟",""),"")),"[H]小时M分钟"),按ctrl+shift+enter组合键结束。
注意:由于“几小时几分钟”不是标准的时间格式,所以用SUBSTITUTE函数将其转为“几时几分”
追问c1至c36的时间是从别的表粘贴过来的,双击后不会变成“2:06:00”的时间样式,感觉是文本
按照你的公式录入后提示错误
加了大括号没有反应
追答你发的图看不清楚啊,点击C37单元格,你直接复制这条公式:=TEXT(SUM(IFERROR(--SUBSTITUTE(SUBSTITUTE(C1:C36,"小",""),"钟",""),"")),"[H]小时M分钟"),按三键结束,自动产生花括号
=TEXT(SUM(--TEXT(SUBSTITUTE(SUBSTITUTE(C1:C36,"小时",":"),"分钟",""),"h:m:s;;0;!0")),"h小时m分钟")
数组公式
如果是超出24小时的
=TEXT(SUM(--TEXT(SUBSTITUTE(SUBSTITUTE(C1:C36,"小时",":"),"分钟",""),"h:m:s;;0;!0")),"[h]小时m分钟")
追问这个公式可以用,如果我想把“0小时18分钟”显示为“18分钟”该如何做到
追答加个判断即可,感谢采纳,按你要求,新的公式为
=TEXT(SUM(--TEXT(SUBSTITUTE(SUBSTITUTE(C1:C36,"小",""),"钟",""),"h:m:s;;0;!0")),"[>0.041666668][h]小时m分钟;[m]分钟")
写好公式后,鼠标放在上方公式栏,同时按下ctrl+shift+enter键执行。
=SUM(INT(IFERROR(REPLACE(C1:C36,FIND("小",C1:C36),LEN(C1:C36)-FIND("小",C1:C36)+1,""),0))) & "小时" & SUM(INT(IFERROR(LEFT(MID(C1:C36,FIND("时",C1:C36)+1,LEN(C1:C36)-FIND("时",C1:C36)),LEN(C1:C36)-FIND("时",C1:C36)-2),0))) & "分钟"
追问不过最后是139分钟,如何转化为正常小时分钟?
上面是按照您发的图片输入的
这是去掉大括号的,上面两个方法我试了同时摁shift+ctrl+enter或只摁enter都不行,没有反应
我这是2007版的
追答现在没考虑分钟换算,所以就是139
139分钟