一个Excel排班表实例

排班表我想一般连轴转的生产型的企业都会用上,也有不同类型的倒班形式,三班两倒,四班三倒等,这都涉及到排班表的设计。本文是通过实例描述了一种四班两运转的Excel排班表制作。

这天,在上面把SAP的活儿处理的差不多了,下(xian)去(de)转(dan)悠(teng)歇会,看见线经理正在做2019年的排班表,他见我来了,顿时感概时间过的很快,2018年马上接近尾声,又将迎来新的一年,这不,2019年的排班表需要做一份了,问我有没有比较简便的方法能实现比较快速的排出他想要的效果。

我一看这是个Excel表格,顿时来了兴趣,但反复瞅了瞅,发现这玩意儿貌似还有点复杂,虽有规律,但通过公式直接实现像还有点难度,当时在下面只是简单尝试了下,就说应该是可以做的,我回头给试试。

这不,又过了几天,我把活儿忙完了,我来研究一下。

2018年排班表样式


首先这个排班表是由日历+班次共同组成,分月份显示,前面数字为日历天,后面为班次,我们共A、B、C、D四个班组,四班两运转模式,即以A班为例,他在四天一个周期里,是一个白班、一个夜班,再加2天休息。这样下来所有班组的4天都相对固定,这样班次即是4天一循环。Excel可以很轻松的通过拖拽来实现连续的班组循环(C/B A/C D/A B/D C/B A/C D/A B/D C/B A/C D/A B/D C/B A/C D/A B/D C/B A/C D/A B/D),但是这如何与前面的日期进行对应呢?

再进一步的剖析,日期目前分月显示,我看是不太好通过公式来实现和班组的循环相连接了,换个思路,如果日期以周为单位连续显示,而班组也这样排列,后续只需要一个&连接,就可以实现我们想要的效果,最后只需做一部分的复制删减即可。现在重点就到了如何让日历显示为连续的周日历?如何让一整行的班组循环显示为每7个一行?

而MOD同余和INT取整两个函数正好可以排上用场,对于日历刚好有个TEXT函数来实现。组合公式如下=TEXT(DATE(2019,1,1)-2+MOD(COLUMN(A2)-1,7)+(ROW(A2)-1)*7,"d"),输入后按需连续拖拽即可。

2019年日历(以周为单位连续显示)

对于第二个问题,跟这个日历其实有很大的相似点,但此时我们需要在上面一行先将班组的循环连续拖拽处理,下面我们通过Offset这个引用函数来实现,组合公式如下=OFFSET($K$1,0,MOD(COLUMN(A1)-1,7)+(ROW(A1)-1)*7),输入后按需连续拖拽即可。

班组循环显示为7个一行

接下来只需&连接函数出场。在第一个单元格输入公式=E4&M4,输入后按需连续拖拽即可。前面再手动录入月份,方便等下复制时辨识。

&函数连接后的效果,排班基本已完成

最后一步即是,将刚才的内容按照月份复制进前面的排版中,然后再做相应的删减即完成了排班表的设计,效果如下。

2019年排班表完成后的效果

保留公式,接下来明年可以很轻松的通过此Excel来实现排班。

此实例仅是个人运用一点浅薄的Excel所学完成的,欢迎指正,也欢迎有更智能快捷的方法的朋友相互讨论。谢谢。

举报
评论 0