在excel公式下工作正常,但在某些情况下,它没有给我正确的价值。
输入:
19:20:42
24:58:36
26:11:18
使用此公式后:
=IF(TIMEVALUE(K7)>TIMEVALUE("09:00:00"),TRUE,FALSE)
我得到了以下输出:
FALSE
TRUE
TRUE
如果时间值是>我观察到的是什么或= 24:00:00它不会给我正确的答案。 我该如何解决这个问题?
答案 0 :(得分:6)
作为Captain的优秀答案的替代方案,你也可以使用:
=IF(K7>(9/24),TRUE,FALSE)
DateTime值在内部存储为自191年1月1日以来的天数,
因此1 = 1天= 24小时。所以9/24 = 0.375 = 9小时:-)
您可以通过清除DateTime单元格的格式轻松验证这一点。
修改:请注意,这样的布尔公式可以用更短的方式表达而不会丢失易读性:
=K7>(9/24)
答案 1 :(得分:3)
当你超过24小时后,Excel将其计为第二天......然后TIMEVALUE
是第二天的时间(即你的例子中的00:58:36和02:11:18)因此,可以在0900之前。
您可以DATEVALUE(K7)+TIMEVALUE(K7)
来确保计算日期部分......