【发布时间】:2015-09-22 12:18:44
【问题描述】:
我目前正在尝试制定一个功能,该功能将跟踪在交付客户方面花费了多少时间。员工向我提供他们开始交付工作的日期和时间以及他们完成工作的日期和时间。
我以目前的方式处理这些信息:
- 第 1 列包含“dd/mm/yyyy hh:mm”表示开始时间
- 第 2 列包含完成时间的“dd/mm/yyyy hh:mm”
现在,我们只在一天中的特定时间工作:我们从 7:15 开始,在 16:45 结束工作,从 12:00 到 12:30 还有 30 分钟的休息时间。 除此之外,我们只在工作日工作,因此不应计算任何属于周末的时间段。
计算休息是否是时间段的一部分很容易处理,我还找到了一种方法来确保在一天过去后减去 14:30,但我不知道如何做到这一点,以便订单应该计算需要多天的准备时间。
一组示例数据(开始 - 结束 ==> 总计 (hh:mm))
2015 年 2 月 23 日星期一 07:45 - 2015 年 2 月 23 日星期一 10:05 ==> 02:20
2015 年 2 月 24 日星期二 11:50 - 2015 年 2 月 24 日星期二 15:35 ==> 03:15(因休息而减去 0:30)
2015 年 2 月 25 日星期三 14:45 - 2015 年 2 月 26 日星期四 07:45 ==> 02:30(由于一天结束而减去 14:30)
2015 年 2 月 27 日星期五 16:00 - 2015 年 2 月 3 日星期一 07:45 ==> 01:15(由于周末而减去 62:30)
2015 年 3 月 30 日星期一 13:20 - 2015 年 1 月 4 日星期三 12:00 ==> 17:10(减去 29:30:2 天 1 次休息)
前三种情况由我当前的代码处理,但我不知道如何让它计算后两种情况。
我使用附加列来检查中断是否在两次之间(A3 包含 =TEXT(A1;"dd/mm/yyyy ")&"12:00" 并且要检查的函数是 =IF(AND (A2>A3;A3>A1);"0:30";0)
第 4 列包含要检查第二天的数据:A4 包含 =TEXT(A1+"24:00";"dd/mm/yyyy ")&"7:15" 并且要检查的函数是 =IF(A2 >A4;"14:30";0)
如您所见,当需要一个周末或多天才能完成订单时,这会带来问题。
我衷心感谢任何花时间从事此工作的人;一个星期以来,我一直在为此绞尽脑汁。
亲切的问候, 冯
【问题讨论】:
标签: date datetime time excel-formula excel-2010