当数字达到X.60时,将细胞向上舍入
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当数字达到X.60时,将细胞向上舍入相关的知识,希望对你有一定的参考价值。
我在excel中制作一些东西来计算我工作一周/月的工作时间,当一个数字达到30.60时(两个班次在半小时结束时)它计算为30.60 *工资=不是正确的工资。
到目前为止,我有=ROUND(SUM(C6:I6),0)
汇总了数字,这工作正常,直到我有另一天,我工作到半小时,然后它只会显示16左右。
正如你在这里看到的,它计算得很好,直到我在周三工作7.30小时,总计显示23.00而不是23.30。
如何才能做到这一点。
谢谢。
你的问题是对你的“小时”的理解。当你写7.30时,你的意思是7小时30分钟= 7.5小时。但是excel知道7小时30/100小时= 18分钟。最简单的解决方案是使用7,5进行7小时30分钟。
(为了检查未答复的问题,我复制了我的评论)
如果你不想使用7.5
(七个半小时)或7:30
(7小时30分钟 - 但请记住将其乘以24,因为Excel将其存储为一天中的一小部分,0.3125
)那么你可以使用INT
和MOD
:
=INT(C6)+(MOD(C6,1)/0.6)
第一部分,INT(c6)
将给你整数部分(即整个小时),我们不想缩放/倾斜。
第二部分有两个阶段。首先,MOD(c6,1)
将给出数字的小数部分(即7.3
将成为0.3
),第二部分是由0.6
除以从“假分钟”转换为“实际小时数”
最后,由于您要将公式应用于单元格数组,因此需要从SUM
交换到SUMPRODUCT
:
=SUMPRODUCT(INT(C6:I6)+(MOD(C6:I6,1)/0.6))
但是,总的来说,最好的选择是使用7:30
并设置数据验证仅允许该字段中的实际时间值。
{编辑}当然,这将使你的输出与0.5
30分钟。如果你想反向回0.3
30分钟(虽然,我几乎无法理解为什么)然后你需要反向运行相同的计算:
=INT(SUMPRODUCT(INT(C6:I6)+(MOD(C6:I6,1)/0.6))) + 0.6*MOD(SUMPRODUCT(INT(C6:I6)+(MOD(C6:I6,1)/0.6)),1)
以上是关于当数字达到X.60时,将细胞向上舍入的主要内容,如果未能解决你的问题,请参考以下文章