我有一个带有2个时间字段的Excel电子表格。我想获得两次之间的差值,以查看第一或第二持续时间是否更快以及增加了多少。我尝试做Duration1-Duration2。效果很好,除非Duration2更长,则返回########。我希望它返回负值。有人可以帮忙吗(见下文):
谢谢 罗布
感谢您对TIMEVALUE的答复。这没有用。我在字段上尝试使用TIMEVALUE,并获得了#VALUE。然后,我将字段格式化为显示AM / PM,但仍然得到#VALUE:
你好,@ BruceWayne。我尝试了您的方法,但遇到了#Value错误,并且数字看起来不正确:
答案 0 :(得分:2)
会进行以下工作吗?
=IF(E1-G1<0,"-"&TEXT(ABS(E1-G1),"hh:mm:ss"),E1-G1)
请确保将此列的格式也设置为Time
。
此外,我刚刚看到了应该有用的related page。
解决此问题的最简单方法是仅更改工作簿使用的日期系统。这听起来有些愚蠢,但是如果您使用的是1900日期系统(这是Windows版本的Excel的默认设置),那么您会在单元格中获得###########。相反,如果改为使用1904年日期系统(这是Mac版本的Excel的默认设置),那么您将在公式中看到正确的负经过时间。
在“高级选项”中,勾选“使用1904年日期系统”,然后可以保留简单的=E1-G1
公式:
答案 1 :(得分:1)
Excel无法处理负时间值,这就是为什么它们显示不正确并导致其他功能出错的原因。可以通过获取绝对值来纠正,以保证得到肯定的结果:
=IF(E2<G2,"-"&TEXT(ABS(E2-G2),"hh:mm:ss"),E2-G2)
答案 2 :(得分:0)
使用TIMEVALUE函数TIMEVALUE(time_value1)-TIMEVALUE(time_value2)