在excel中查找2个日期/时间之间的天数和时间

时间:2012-03-28 06:07:17

标签: excel date time excel-formula

作为一个例子,我有两列,A和B - 分别标题为日期和时间。

在A2我有: 2012年4月3日

在A3中,我有: 2012年8月3日

在B2我有: 20时34分09秒

最后在B3我有: 17时35分40秒

所以基本上我想找出“4/03/2012 20:34:09”和“8/03/2012之间的时间  17时35分40" 秒。

目前我在单元格A5中有:=(A3 + B3) - (A2 + B2)。

这可以显示“3/01/1900 21:01”,这是两者之间的日期和时间差异。

同样在单元格A6中,我有一个公式,它以一种很好的格式表示: = TEXT(A5,“dd hh:mm:ss”)。所以上面的结果看起来像“03 21:01:31”。

但是,当A3更改为“4/03/2012”时会出现问题。 从现在开始A6显示“#VALUE!”什么时候应该显示:00 02:58:29 。 A5也显示##### ..... etc

我不太清楚如何解决这个问题。任何建议将不胜感激!

3 个答案:

答案 0 :(得分:1)

好吧,我没有最好的理由说明为什么会发生这种情况,但一种解决方案是将日期和时间合并到一个中间单元格中,然后计算这两个中间单元格的差异。

例如,在C2中放置=A2+B2并在C3放置=A3+B3然后在A5放置=C3-C2。现在,未格式化的值实际上会正确计算。最后,将文本格式更改为:

=TEXT(ABS(A5), IF(A5<0,"-","") & "dd hh:mm:ss")

这将显示如前所述格式化的时差,但如果需要则显示负号。

(如果有人能够解释为何会发生这种情况的细节,我很乐意听到。)

答案 1 :(得分:1)

似乎您因负面时间而收到错误。此外,dd格式仅允许日期之间最多31天,因为它代表相对于1900年1月的日期。您可以尝试:

A5:  =ABS(A3+B3-A2-B2)
A6:  =TEXT(INT(A5),"00")&TEXT(MOD(A5,1)," hh:mm:ss")

如果您想保留该标志,可以将SIGN(A3+B3-A2-B2)添加到公式

答案 2 :(得分:0)

点击here

我认为这可能会对你有所帮助(附上部分信息)

enter image description here