将分钟转换为百分之一的Excel公式

我需要准备一个Excel公式,做下面的时间公式:

04:15:30应该转换为04:25

18:30:15应该转换为18:50

33:45:59应该转换为33:75

30:14:14应该转换为30:23

这个公式应该把分钟转换成百分之一,而不应该像上面的例子那样用小时来做任何事情。

我已经search了几个小时,可以find这样一个确切的excel公式。

FIRST NOTE : if you make some improve on this formula (=SUBSTITUTE(TEXT(A1*24,"00.00"),".",":")) it could be help. SECOND NOTE : as above formula note that it should not have any excel date conversion such as (MINUTE,HOUR,[hh]...etc) 

提前致谢。

正如我的评论里面说的:你的33:45:59是转换date/时间,而你想要ppl转换它而不使用excel的buildin转换。

把你的时间尽可能地串起来,这个公式是完美的:

 =LEFT(A1,2)&":"&TEXT(MID(A1,4,2)/3*5,"00") =LEFT(A1,2)&TEXT(MID(A1,4,2)/3*5,""":""00") 

但正如所说:它已经转换为时间/date并存储为双。 所以你的33:45:591.40693287037037 。 (这样=LEFT(A1,2)"1."而不是"33"

要改变它就像这样,你需要一个像这样的公式:

 =TRUNC(A1*24)&":"&TEXT(ROUND(MOD(A1*2400,100)-MOD(A1*1440,1)/3*5,0),"00") 

或者如果你想在几秒钟内完成,那么:

 =TRUNC(A1*24)&":"&TEXT(ROUND(MOD(A1*2400,100),"00") 

如果还没有显示TEXT那么你需要这样的东西:

 =TRUNC(A1*24)&":"&IF(ROUND(MOD(A1*2400,100)-MOD(A1*1440,1)/3*5,0)<10,0,"")&ROUND(MOD(A1*2400,100)-MOD(A1*1440,1)/3*5,0) =TRUNC(A1*24)&":"&IF(ROUND(MOD(A1*2400,100),0,"")&ROUND(MOD(A1*2400,100) 

附注:公式=SUBSTITUTE(TEXT(A1*24,"00.00"),".",":")不包含任何date/时间函数。

编辑

使用替代它将看起来像这样:(在A1中的完整值)

 =SUBSTITUTE(TEXT(ABS(TRUNC(FLOOR((A1-"220:00"-(59/86400)*((A1-"220:00")<0))*24,IF((A1-"220:00")<0,-1/60,1/60)),2)),"00.00"),".",":")&IF((A1-"220:00")<0,"-","") 

-(59/86400)*((A1-"220:00")<0)部分是为了确保它正常工作。 没有,秒数的负数将下降1分钟…只是math:)

它相当简单:将单元格格式化为带两位小数的数字,使公式=A1*24

时间格式内部存储为一天几分之一的日子。

要减less秒数,你应该使用=HOUR(A1) &MINUTE(A1)/60

也许这可能适合你:

 =MAX((24*INT(A1))+((A1-INT(A1))*24),(-1*((24*INT(A1))+((A1-INT(A1))*24))))