在Excel中计算加班时间

荣耀

我正在尝试制作如下计算加班时间的电子表格:如果任务在下午2点之后开始,则将小时计算为一个小时;如果任务在凌晨12点之后开始,则将小时计算为2小时。我编写了以下公式在E栏中:

 =IF(AND(B5>G1;B5<G2);D5*D1;D5*D2)

但是我得到了错误的结果,我在哪里出错了?

谢谢你

在此处输入图片说明

转发爱德

您的公式的问题是,您正在考虑将午夜12:00 AM。或24:00。如果查看G2,您将在Excel中看到12:00 AM或(24:00),它将存储为0。您的逻辑检查是检查是否小于零。假设您从不处理负时间,那么结果将永远是错误的,因为任何时间都不小于零。

我会稍微更改您的布局,并添加没有加班的班次3。当某人在9 AM开始时会发生什么?

如果您必须保持布局不变,那么我将在单元格D5中将您的公式更改为:

=HOUR(C5-B5)

然后确保单元格D1,D2,D5和E5都是通用格式,因为它们只是数字而不是实际时间。

下一组G2等于08:00

将E5中的公式更改为:

=IF(B5<G2,D5*D2,IF(B5>=G1,D5*D1,D5))
or
=D5*IF(B5<G2,D2,IF(B5>=G1,D1,1))

看看是否能进一步解决您的问题。

需要注意的一件事是,Excel以十进制格式存储时间,这确实会让您失望。当您在一个单元格中看到12:00 PM时,您可能会认为自己正在处理12,但是excel实际存储在该单元格中的是0.5,因为这是一天的一半。24:00不存在如果将Excel公式作为公式的输入提供,则Excel公式会将其视为0。VBA不会接受。有效的Excel时间范围是从00:00到23:59。

现在,如果您严格按照8小时制轮班,并且只关心开始时间,那么您可以简单地执行if语句,说IF(开始时间=班次1开始时间,然后乘以班次1比率IF(开始时间) =班次2的开始时间,然后乘以班次2的比率(无特殊比率))

如果您正在查看实际的开始时间,并且一个人开始一个班次但在下一个班次结束时,还有其他需要考虑的事情?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Excel中计算“订婚时间”

来自分类Dev

Excel公式来计算加班费

来自分类Dev

输入不带冒号的时间(hhmmss),并在Excel中计算时差

来自分类Dev

在Excel中计算组合对

来自分类Dev

在Excel中计算总数?

来自分类Dev

在Excel中计算日期

来自分类Dev

使用3个不同表中的行计算加班时间

来自分类Dev

SQL帮助计算项目计费的正常和加班时间

来自分类Dev

使用3个不同表中的行计算加班时间

来自分类Dev

在Android中计算当前时间

来自分类Dev

在Excel中计算多数值

来自分类Dev

在Excel中计算剩余预算

来自分类Dev

Excel VBA - 在 VBA 中计算

来自分类Dev

如何在Excel VBA中计算员工的计费时间

来自分类Dev

在组织模式表中计算时间范围

来自分类Dev

如何在RX中计算处理时间

来自分类Dev

在MYSQL中计算文件状态时间

来自分类Dev

在Python中计算其他时区的时间

来自分类Dev

从预订表中计算空闲时间

来自分类Dev

在2列中计算持续时间

来自分类Dev

在Openmp中计算时间的正确方法

来自分类Dev

在Matlab中计算时间平均数据

来自分类Dev

如何在Jquery中计算时间?

来自分类Dev

在数据库中计算时间

来自分类Dev

从混合类型的列中计算SUM()时间

来自分类Dev

在Oracle中计算工作时间

来自分类Dev

如何在 php 中计算缺勤时间

来自分类Dev

如何在Excel中计算元素

来自分类Dev

如何在Excel中计算总和