Excel排班表怎么做。高人指点

一共八个人,每个周末一人值班,遇到节假日每人值班一天,依次顺延,怎么在excel中做全年排班表。就是那种按钮的。比如选人名,然后自动就出来此人的值班时间,或者输入时间,显示这个周末谁值班。。

第1个回答  2013-07-01
你这个,是做出来之后的复查啊。不是问题所说的怎么做,我先说第一个好了。首
首先,楼上的正解了,不过他复杂了点,你就在ABCDEF...对应的123456中的格子写下的姓名,假日,值班,然后,找工具栏上的数据,排序,懂吧,这样做出来之后就要进行复查了
还是再数据那里,找出自动筛选,选中全部表格,然后你要找什么就打字上去,一按,全出来了。注意,你出了结果尽量不要按保存,不然你下次再开这个表就会发现数据少了,不全了
望采纳,谢谢
第2个回答  2013-07-01
1.在A2开始下列当年日期;
2.在B2输入:
=IF(WEEKDAY(A2,2)=7,"X",""),下拉;
3.将非星期日的假期在B列用“X”标示出来;
4.在I2:I9输入1到8自然数;
5.在J2:J9输入员工姓名
6.在D2输入:
=IF(B2="","",VLOOKUP(MOD(COUNTIF(B$1:B2,"X")+2,3)+1,$I$2:$J$4,2,0)),下拉后完成。
第3个回答  2013-07-01
值班表要事先排好
比如在Sheet1里面A列是日期,B列是值班人的名字
sub NameTODate ()
Dim i as Integer
Dim Str1, Str2 as String
Str1 = InputBox("请输入值班人姓名:")
For i = 2 To 100
IF Sheet1.cells(i,2) = Str1 then Str2 = Str2 + ";" + Sheet1.cells(i,1).text
Next i
Str2 = Str1 + "的值班日期为:" + Str2
MsgBox Str2
End Sub
用日期查值班人的话,就直接用函数了:
C2输入要查询的日期,D2=IF(ISERROR(VLOOKUP(C2,$A$2:$B$100,2,FALSE)),"这天没人值班",VLOOKUP(C2,$A$2:$B$100,2,FALSE))本回答被网友采纳