在Excel中没有正确检查时间值是否相等


0

我有Excel2007。我有两个时间值,例如A1 = 6:20和B1 = 6:10,我正在发现它们的差异并检查其是否等于另一个值,例如C1 = 0:10。因此,当我将单元格D1 =(A1-B1)= C1放入时,我期望为TRUE,但得到FALSE。

我认为这与时间值的存储方式有关。当我摆脱了从hh:mm到General的自定义格式时,它说A1-B1 = 0.006944444,与0:10存储的值相同。这可能与浮点精度有关。我尝试按照显示的那样进行设置精度,但是没有做任何事情。如果我在一个像元中执行0:10,在另一个像元中执行0:10,则表示它们是等效的,但是由于某种原因,它告诉我6:20和6:10的差值并不等于0:10,即使那样它已显示并存储。

任何想法如何解决这一问题?


我认为您无法计算时间格式:)重新格式化为一般或数字格式时只能加/减...等。
KevinD

如果您继续扩展小数,您将看到为什么00:10= 0.0069444444444444406:20-6:10=0.006944444444444420
Scott Craner

您可以像这样比较分钟:=MINUTE(A1-B1)=MINUTE(C1)
Scott Craner

这也适用:=TIME(HOUR(A1-B1),MINUTE(A1-B1),SECOND(A1-B1))=C1
Scott Craner

@ scott-craner为什么它们的十进制形式不同?
罗布夫
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.