如何将此(69.36)转换为多少个月,几天,几小时,分钟和一个月的表示形式。秒?
答案 0 :(得分:1)
更新2: 抱歉,还有一些更新1中的代码不匹配的情况。我有两个建议,一个很容易但只有几天,几小时,几分钟和几秒:
=FLOOR(B4-A4,1)&":"&TEXT((B4-A4)-FLOOR(B4-A4,1),"hh:mm:ss")
但是上面的请求需要几个月,这对于内置日期功能来说非常棘手,因为几个月的天数不一样。和以前一样,我有一个两个单元的解决方案,这个解决方案既丑陋又长,但在更多情况下似乎有效:
存储:在c1
=12*(YEAR(B1)-YEAR(A1))+(MONTH(B1)-MONTH(A1))+IF(DAY(B1)-DAY(A1)+IF(FLOOR(B1,1)<FLOOR(A1,1),-1,0)<0,-1,0)
最终解决方案公式
=FLOOR(C1/12,1)&":"&MOD(C1,12)&":"&FLOOR(B1-DATE(YEAR(A1),MONTH(A1)+C1,DAY(A1)),1)&":"&TEXT((B1-A1)-FLOOR(B1-A1,1),"hh:mm:sss")
结果:
A B C Result Simple Days + Time Formula
5/1/2006 0:00 5/2/2007 0:00 12 1:0:1:00:00:00 366:00:00:00
5/1/2006 10:35 5/2/2007 15:30 12 1:0:1:04:55:00 366:04:55:00
5/1/2007 10:35 5/2/2007 15:30 0 0:0:1:04:55:00 1:04:55:00
5/2/2007 10:35 5/2/2007 15:30 0 0:0:0:04:55:00 0:04:55:00
5/2/2006 10:35 5/2/2007 15:30 12 1:0:0:04:55:00 365:04:55:00
5/2/2005 10:35 5/2/2007 15:30 24 2:0:0:04:55:00 730:04:55:00
5/1/2006 18:30 5/2/2007 15:30 12 1:0:1:21:00:00 365:21:00:00
5/1/2006 17:35 5/2/2007 15:30 12 1:0:1:21:55:00 365:21:55:00
4/25/2007 17:35 5/2/2007 15:30 0 0:0:7:21:55:00 6:21:55:00
5/7/2006 18:30 5/2/2007 15:30 11 0:11:25:21:00:00 359:21:00:00
最后两行未能在上次更新的公式中提供正确的结果。
更新1: 我给出的旧配方在不同月份处理日期的方式存在问题。计算几个月时出现奇怪的事情。不知道为什么。在A1(1/1/2006 10:35:00 AM)和B1(5/2/2007 3:30:00 PM)中再次考虑两次。然后在c1中,您希望以下公式计算一个日期,其中月份和年份与b1在同一时间和日期为a1:
=DATE(YEAR(B1),MONTH(B1),DAY(A1))+TIME(HOUR(A1),MINUTE(A1),SECOND(A1))
然后解决问题的(更加丑陋的)公式是:
=IF(C1-A1>0,TEXT(C1-A1,"yy:mm")&":"&TEXT(B1-C1,"dd:hh:mm:ss"),"00:00:"&TEXT(B1-A1,"dd:hh:mm:ss"))
我没有详尽地测试它,但我测试了一些案例,似乎有效。
A B C Result
5/1/2006 0:00 5/2/2007 0:00 5/1/2007 00:12:01:00:00:00
5/1/2006 10:35 5/2/2007 15:30 5/1/2007 00:12:01:04:55:00
5/1/2007 10:35 5/2/2007 15:30 5/1/2007 00:00:01:04:55:00
5/2/2007 10:35 5/2/2007 15:30 5/2/2007 00:00:00:04:55:00
5/2/2006 10:35 5/2/2007 15:30 5/2/2007 00:12:00:04:55:00
5/2/2005 10:35 5/2/2007 15:30 5/2/2007 01:12:00:04:55:00
注意:如果B中的日期大于A,则不进行错误检查,在这种情况下给出“#VALUE!”错误。
旧版本 假设A1包含日期1 5/9/2007 10:35而B1包含日期2 6/9/2007 15:30 那就是时间的差异:
=TEXT(B1-A1,"m:d:h:mm:ss")
这给出了期望的结果
1:31:4:55:00