使用 Excel 进行计费和站点停机计算

使用 Excel 进行计费和站点停机计算

非常感谢您对 Excel 时间计算的帮助。我一直在尝试创建一份报告,根据停机时间的开始时间和结束时间计算受影响的时间。

因此,如果一名员工在中午 12:00 打卡上班,下午 4:00 打卡下班去吃午饭,然后在一小时后重新打卡上班,但是网站在他下午 3:30 打卡下班前 30 分钟就宕机了,并在下午 7:00 恢复运行,那么为了计费的目的,您想知道在网站宕机期间他打卡了多少时间。

1) 您指的是 1 班次、2 班次还是 3 班次的工作环境?

答案 (1) 是的,全天候运营

2)是否有任何轮班延长至午夜?

答案 (2) 是的,全天候运作。

3)时间条目是否也包含日期(即使显示可能仅定义为时间)

答案(3) 没有日期。仅基于 24 小时。

4)停机时间是否可以随时开始并持续任意时间(甚至 > 24 小时)?

回答 (4) 好问题。停机可以随时开始吗?是的。并且持续任何时间?是的。但截至目前,停机时间已超过 24 小时。最长停机时间是 19 小时。

5)是否允许使用用户定义函数(UDF)(需要放宽安全设置)

答案 (5) 可能不是,但我不太确定这一点。抱歉。

(1) 只是为了明确疑问,您是否说图中的 CI 列是输入(用户输入的值),而 J 列是您希望 Excel 计算的结果?

答案 (1)C 至 G 列是来自名册的输入。H 和 I 列是手动输入的,J 列是结果。

 (2)您能否阐明工作表的整体结构?

答案(2)工作表是员工名册。我们手动添加停工时间的开始和结束。

 (2a)您只显示一名员工。您还有其他员工吗?他们是否列在后续行中? 

答案 (2a) 是的,这是一个 24 小时运营的项目,因此每行列出多名员工。

(2b)网站是否每天停机一次(或每班停机一次)?如果网站全天运行,那么 H 列和 I 列的内容是什么?

答案(2b)网站通常每周宕机一次。如果网站没有宕机,我们就不需要运行报告。

(2c) 如果站点在轮班期间停机两次(即停机、恢复、再次停机、再次恢复),时间存储在哪里?答案 (2c) 好问题,到目前为止它已经发生了,所以没有考虑到它,但肯定有很大的可能性。当站点停机时,我们会提出 IT 票证并记录时间,直到它恢复运行,然后关闭票证并记录时间。

(2d) 假设您有多名员工(列在不同的行上),站点停机时间是否在每一行上重复?

答案(2d)是的。因为我们需要查明有多少员工受到了影响,以及他们有多少小时无法工作。

我们有三个班次:早班、晚班、夜班。

早上 6:00、7:00 和 8:00 开始

晚上 3:00、4:00 和 5:00 开始

过夜时间为晚上 8:00、9:00 和 10:00

所有团队工作 9 小时,减去 1 小时午餐时间。

在此处输入图片描述

附言:由于某种原因,我没有收到此主题的电子邮件提醒。所以认为没有人回复。

更新:根据示例图像的第二张屏幕截图,该公式似乎不适用于 24/7 全天候操作。有什么原因吗?

在此处输入图片描述

答案1

您尚未回答我关于更多信息的请求,因此我的回答认为午夜没有工作班次,只有 00:00 至 23:59:59 的时间段,并且每天只有一次停机时间。

把一个工作日想象成两个时间段(午餐前和午餐后),你用完全相同的方式进行评估。时间段分别是ClockInLunchOutLunchInClockOut。然后,你将这两个时间段的结果相加,得到最终答案。

每个时期可能会发生以下事件:

            In                          Out
WorkTime    +----------------------------+

DownTime  - +-------E                           DT started before WT, ended during WT

DownTime  - +----------------------------+- - - DT started before WT, ended after WT

DownTime           +--------------+             DT started during WT, ended during WT

DownTime           +---------------------+- - - DT started during WT, ended after WT

DownTimeStartDTS和标记,用DownTimeEnd和标记DTE,用标记重叠时间,我们得到以下公式WorkTimeStartWTSWorkTimeEndWTEOL一个时期

OL = MAX(MIN(WTE, DTE) - MAX(WTS, DTS),0)

最外层MAX是为了防止负值

当我们添加OL午餐前和午餐后时:

=MAX(MIN(G11,I11)-MAX(F11,H11),0) + MAX(MIN(E11,I11)-MAX(D11,H11),0)

相关内容