Excel 中 =FLOOR() 方程的准确性不一致
Inconsistent accuracy with the =FLOOR() equation in Excel
我正在进行审计工作,审查我工作场所的计费做法;我们已获得提供服务开始时间和结束时间的数据表,以及关于计费单位的规则集(15 分钟= 1 个单位).
我在这方面的作用是查看已开具账单或未开具账单的内容,找到应开具账单的真实单位数量,然后确定账单部门按照条款向保险公司收取费用的准确性或不准确性单位价值。
我的解决方案是用这些 headers:
创建数据列
开始时间、结束时间、经过的分钟数、实际总单位数
(table 中还有更多 headers,但它们对解决方案没有影响)。
已用分钟数单元格的公式为 =(([@[结束时间]]-[@[开始时间]]))*1440。这是为了将从开始时间和结束时间中提取的小时数转换为分钟数。
真正的总单元格将具有等式 =FLOOR(([@[已用分钟数]]/15),"1")。舍入部分就是我的困惑所在。我们需要舍入以确保我们不会意外地舍入和计费,例如,104 分钟 7 个单位,而它应该是 6 个单位。我遇到的问题是,由于方程的四舍五入部分,返回的一些答案不准确,我不确定为什么。
例子:
3:20 pm - 5:10 pm 是 110 分钟。有了上面的等式,真实单位总数为 7,这是准确的。
下午 3:30 - 4:45 下午是 75 分钟。有了上面的等式,真实单位总数为 4,这是不正确的。
或者,3:45 pm - 5:00 pm 也是 75 分钟。有了上面的等式,真实单位总数为 5,这是准确的。
3:45 pm - 4:00 pm 是 15 分钟。有了上面的等式,真实单位总数为 0,这是不正确的。
感谢为此提供的任何帮助;我敢肯定,无论我要寻找的解决方案是什么,都可能是方程式中的一个小改动,可以让事情变得正确。谢谢你的时间。
我用相同的列名设置了您在 table 中提供的数据。如果您查看所附图片,您会发现我更改了 "Minutes Elapsed" 上的格式以显示大约 15 位数字。这表明等式的结果不是整数;但是,它们足够接近,可以用更少的数字显示。
在我的 "Column2" 中,我使用等式 =ROUND([@[已用分钟数]],0) 将分钟四舍五入为最接近的整数。我的专栏 "Fixed" 在 "True Total Units" 中使用相同的方程式,只是引用 "Column2" 而不是 "Minutes Elapsed":=FLOOR(([@[Column2]]/ 15),"1").
所以最简单的解决方法可能是将 "Minutes Elapsed" 等式更改为 =ROUND((([@[结束时间]]-[@[开始时间]])) *1440,0)
我正在进行审计工作,审查我工作场所的计费做法;我们已获得提供服务开始时间和结束时间的数据表,以及关于计费单位的规则集(15 分钟= 1 个单位).
我在这方面的作用是查看已开具账单或未开具账单的内容,找到应开具账单的真实单位数量,然后确定账单部门按照条款向保险公司收取费用的准确性或不准确性单位价值。
我的解决方案是用这些 headers:
创建数据列开始时间、结束时间、经过的分钟数、实际总单位数
(table 中还有更多 headers,但它们对解决方案没有影响)。
已用分钟数单元格的公式为 =(([@[结束时间]]-[@[开始时间]]))*1440。这是为了将从开始时间和结束时间中提取的小时数转换为分钟数。
真正的总单元格将具有等式 =FLOOR(([@[已用分钟数]]/15),"1")。舍入部分就是我的困惑所在。我们需要舍入以确保我们不会意外地舍入和计费,例如,104 分钟 7 个单位,而它应该是 6 个单位。我遇到的问题是,由于方程的四舍五入部分,返回的一些答案不准确,我不确定为什么。
例子: 3:20 pm - 5:10 pm 是 110 分钟。有了上面的等式,真实单位总数为 7,这是准确的。
下午 3:30 - 4:45 下午是 75 分钟。有了上面的等式,真实单位总数为 4,这是不正确的。
或者,3:45 pm - 5:00 pm 也是 75 分钟。有了上面的等式,真实单位总数为 5,这是准确的。
3:45 pm - 4:00 pm 是 15 分钟。有了上面的等式,真实单位总数为 0,这是不正确的。
感谢为此提供的任何帮助;我敢肯定,无论我要寻找的解决方案是什么,都可能是方程式中的一个小改动,可以让事情变得正确。谢谢你的时间。
我用相同的列名设置了您在 table 中提供的数据。如果您查看所附图片,您会发现我更改了 "Minutes Elapsed" 上的格式以显示大约 15 位数字。这表明等式的结果不是整数;但是,它们足够接近,可以用更少的数字显示。
在我的 "Column2" 中,我使用等式 =ROUND([@[已用分钟数]],0) 将分钟四舍五入为最接近的整数。我的专栏 "Fixed" 在 "True Total Units" 中使用相同的方程式,只是引用 "Column2" 而不是 "Minutes Elapsed":=FLOOR(([@[Column2]]/ 15),"1").
所以最简单的解决方法可能是将 "Minutes Elapsed" 等式更改为 =ROUND((([@[结束时间]]-[@[开始时间]])) *1440,0)