减去时间给出“####”,它应该是负时间

时间:2015-04-07 20:01:38

标签: excel

我有一个简单的案例:

我的j9细胞有公式: = h9-g9


当h9的值为17:30且g9的值为17:00时,j9的结果为00:30 ......确定无误!

enter image description here


但是当h9的值为16:30时,它会崩溃..

enter image description here

而不是显示 -00:30 (正如我所料),它显示了很多#。


我错过了公式中的某些内容吗?提前谢谢。

4 个答案:

答案 0 :(得分:2)

您的计算产生的是负值,构成无效的日期/时间。

解决此问题的一种方法是切换到“1904日期系统”。要执行此操作,请选择“文件”选项卡,然后选择“选项”,然后选择“高级”,然后找到“使用1904日期系统”复选框,并选择它(这在使用Excel 2010及更高版本时有效)。

另一种解决方法是将公式更改为:

= IF(h9-g9 <0,“ - ”&amp; TEXT(ABS(h9-g9),“hh:mm”),h9-g9)

警告:这会产生一个文本值,在其他计算中使用时可能无效。

答案 1 :(得分:1)

我会用什么:

=IF(H9>G9;"";"-")&TEXT(ABS(H9-G9);"h:mm")

这将生成经过时间作为文本值,如果它是否定结果。

由于结果始终是文本,因此计算字段的格式不必更改为时间。

注意:在荷兰语版本的Excel上,TEXT()格式必须为“u:mm”才能使其正常工作。

答案 2 :(得分:0)

Excel并不欣赏负面时间。您可能希望将日期合并到计算中或可能(可能使用=IF(H9>G9,H9-G9,1+G9-H9)格式'公式'否定'时间导致红色条件格式化,或使用一天的分数而不是时间。

答案 3 :(得分:0)

TL库格先生方程的一个补充。

= IF(G8-E8 <0,“-”&TEXT(ABS(G8-E8),“ hh:mm”), TEXT((G8-E8),“ hh:mm”))< / strong>

使用此等式将始终将时间差(正或负)格式化为00:00。