excel 自动排列值班表,人员7人,每天三人值班
为了使值班人员及每天班次可自定义,所以做得公式比较麻烦,不过一劳永逸吧,我自己也能用得到,发给你看看。
值班人员如果增加,可以直接在下面增加人员,排班表自己调整,如果要增加每天的值班人的话,需要增加列,并调整公式参数。
C列(人员1)内单元格公式:
=INDEX($G$2:$G$32,IF((ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-2)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-2)/COUNTA($G$2:$G$32),0))=0,COUNTA($G$2:$G$32),(ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-2)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-2)/COUNTA($G$2:$G$32),0))*COUNTA($G$2:$G$32)))
D列(人员2)内单元格公式:
=INDEX($G$2:$G$32,IF((ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-1)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-1)/COUNTA($G$2:$G$32),0))=0,COUNTA($G$2:$G$32),(ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-1)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2-1)/COUNTA($G$2:$G$32),0))*COUNTA($G$2:$G$32)))
E列(人员3)内单元格公式:
=INDEX($G$2:$G$32,IF((ROUNDDOWN((COUNTA($C$1:$E$1)*$A2)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2)/COUNTA($G$2:$G$32),0))=0,COUNTA($G$2:$G$32),(ROUNDDOWN((COUNTA($C$1:$E$1)*$A2)/COUNTA($G$2:$G$32),8)-ROUNDDOWN((COUNTA($C$1:$E$1)*$A2)/COUNTA($G$2:$G$32),0))*COUNTA($G$2:$G$32)))
1、在A1:A7中输入七个人的名字;
2、在C1中输入“人数”,C2中输入=COUNTA(A:A)
3、在D1中输入“每组人数”,D2中输入“3”
4、在F1中输入“第一人”,F2中输入“1”
5、在G1中输入“第二人”,G2中输入“2”
6、在H1中输入“第三人”,H2中输入“3”
7、在F3中输入公式=INDEX($A:$A,IF(MOD(F$2+$D$2*(ROW($A1)-1),$C$2)=0,$C$2,MOD(F$2+$D$2*(ROW($A1)-1),$C$2)),1)
8、选中F3,并将鼠标放在F3的右下角,分别向下和向右拉,即可
另外,可添加人数改成任何人数,也可调整每组的人数,
非常感谢
这样的话每隔七天都是一样的,我想要的是每隔七天都来一次更换
是不是要求人员搭配不一样?
广告 您可能关注的内容 |