1、课程表:由总表自动生成班级、教师课程表(适合学校教务处排课)用公式制作了一个学校或年级部使用的排课表,适用用12个班以下。 其中全部用查找引用函数公式(没有用VBA),方便使用者修改其中的内容. 在总课程表中选择了各班的课程后会自动出现老师名字,总表中利用数据有效性直观显示冲突的排课。 在班级课程表中选择不同的班级就会自动出现班级课程.教师个人课程表中选择不出的老师名字也可以生成个个课程表,显示上课班级及代课科目,同时统计该教师个人周课时数。请下载时下载下面的最新版本。在教师个人课程表中定义了2个名称公式和目的如下:次数=COUNTIF(OFFSET(zou1,ROW(教师课程表!1:1)2,
2、(COLUMN(教师课程表!A:A)-1)12,),教师课程表!E2)这个公式主要是通过COUNTIF求在总表中周1到周5的同一个课时里,某个老师的名字出现的次数.注意zou1也是一个定义的名称总表中。 如果一个课时出现某个老师名字次数为0,肯定没他的课程。如果出现1次,就返回名字上面的课程及班级.如果出现2次以上,就是排课出错,有冲突了。 序列=CHOOSE(1;2;3,OFFSET(zou1,教师课程表!$B3*2,VLOOKUP(教师课程表!D3,”一,0;二,1;三,2;”四”,3;”五”,4;六,5,2,0)12,,),OFFSET(zou1,教师课程表!$B3*21,VLOOKUP(教师课程表!D$3,一,0;二”,1;三,2;”四,3;五”,4;六,5,2,0)12,,),OFFSET(zou1,,VLOOKUP(教师课程表!D$3,一,0;二,1;”三”,2;四,3;五”,4;六,5,2,0)12,,) 关于CHOOSE函数各位了解一下就可以了,这个公式的目的是抽出相应的3个区域,便于想找课程及班级的信息.请各位高手给进一步完善和改进公式设置。欢迎大家提出进一步的改进意见!