我编写了下一个工作表来计算我的工作时间。
通过互联网提出的其他解决方案将不起作用,因为每天的工作时间量最初并未固定。当“总工作时间”等于“正常工作时间”时,有时会出现问题。当我尝试使用条件格式化超级小时单元格时,我没有得到正确的结果。平等似乎并非如此。
单元格 K9:负数或非常大的日期和时间值显示为井号 (###)
以下信息很重要:
我想知道为什么会发生这种情况以及是否有解决方案或不同的方法。
当您在 Excel 中执行数学运算时,有时会出现浮点错误。它们的出现是因为 Excel 的精度限制为 15 位,因此 15 之后的有效数字将被忽略。
Excel 中的时间都是天的百分比。计算机以二进制计算,因此在数学运算之前所有这些小数都必须转换为二进制,并且结果必须转换回十进制。
例如,像二进制的 0.1 这样简单的东西就像十进制的 Pi - 它不是一个有限的数字。
对这些转换后的数字进行数学计算,会出现舍入误差。
如果你把K9的格式改成General,你可能会发现它是一个用科学计数法表示的非常小的负数。
将 K9 中的结果四舍五入到大于 4 的值以允许一天有 1440 分钟,应该可以消除错误。
好吧,我认为自己在我的陈述中得到了适当的纠正,即重复加法应该给出与乘法相同的答案。我只是想说它是确定性的(相同的计算应该给出相同的答案),但结果是错误的。
因此,乘法与加法很可能是造成差异的原因,但它也可能来自时间常数的定义方式和后来的组合方式,正如您从这个演示中看到的:-
B6 的最后一位小数与 B8 不同,因此相等测试失败。
这是在 Excel 2007 中:我无法在 Excel 2003 或 Excel 2010 中重现该行为。