嫌麻烦的话,可以不做,一个表足够了 。
17
第4章 班课表
这张表是要打印出来贴在班上的,同样是从"总课表"中通
过公式将数据抽取出来,填在您制作好的班级课程表中,它大致
应该长成图 4-1 的样子
图 4-1 班级课表
先将页面按 A4 或 B5 纸张设置好(因为最后是要打印出来的),
Excel——让排课更省心
18
然后将表格的骨架做出来,最后来写公式 。
这个表的班级选择在$H$1,可以手工直接在该单元格中输入
班级,如果不喜欢这样,那就设置条件格式,然后用鼠标来选择 。
具体方法是:先将"安排"表中的$B$2:$AW$2 区域定义为名称
(我这里叫),然后在数据有效性设置的"允许"下选"序列",
在"来源"后填入:=classes 。
$B$2 单元格用来显示班级名称,公式如下:
=HLOOKUP($H$1,安排!A2:$AW$19,18,0)
这个公式前面遇到过,就不多解释了 。
$C$2 单元格显示该班班主任姓名,公式如下:
=HLOOKUP($H$1,arrangement,17,0)
这个公式与$B$2 单元格里的公式基本相同,只是这里不是单
元格引用 , 而是用了名称,arrangement=安排!$A$2:$AW$19,其
它就没什么了 。
下面来看星期一第 1 节课(单元格 B4)的公式:
=HLOOKUP($H$1,排课,ROW()-2+8*(COLUMN()-2),0)&CHAR(10)
&CHAR(10)&HLOOKUP($H$1,任课教师,
ROW()-2+8*(COLUMN()-2),0)
第 4 章 班课表
19
这公式看起来比较长,也比较复杂一点,粗一看可能会把您
吓跑,但仔细研究一下也没出现新函数,都是之前见过的 , 由于
公式嵌套会使得您望而生畏 。如果搞清楚公式中的每个函数以及
它的参数特点 , 就不难理解了 。下面作一些说明:
先说两个名称 , 一是:排课=总课表!$C$2:$AX$42 , 其实就是
"总课表"的排课区;二是:任课教师=总课表!$AY$2:$CT$40,
它是"总课表"的任课教师区 。整个公式由两部分构成,以
CHAR(10)①函数为分界点,第一部分显示课程名称,由
HLOOKUP($H$1,排课,ROW()-2+8*(COLUMN()-2),0)决定;第二部分
显示该课程任课教师,由 HLOOKUP($H$1,任课教师,
ROW()-2+8*(COLUMN()-2),0)决定 。如果像这样将这个长公式分解
为两部分 , 是不是就将公式变短了呢?
第一部分思路是,用 HLOOKUP 函数,在"排课"区域去查
找班级名称($H$1 单元格所代表的值),找到后 , 返回该区域的
第 ROW()②-2+8*(COLUMN()③-2)④行对应值,这便是该节课的课程
① CHAR(10)函数其实是一个换行符,用两个这样的函数,是为了让行间
距大一些 , 用一个也可以 。
② 返回该单元格(B4)的行数 。
③ 返回该单元格(B4)的列数 。
④ 整个 ROW()-2+8*(COLUMN()-2 的值是凑出来的 。当然 , 规律也是有的 。
比如 8*(COLUMN()-2,为什么是这个样子的呢?去看看"总课表"的排课区
就知道了,原来每隔 8 行(即 8 节课)就是一个轮回,因此 , 当星期二的第
Excel——让排课更省心
20
名称了 。
第二部分跟第一部分是完全类似的,自己试着去理解一下吧 。
中间用两个 CHAR(10)函数连接起来,构成两行 , 同时两行还有间
隔,这样看起来是不是要美观点呢 。有了这个公式后 , 只需要将
复制到全表就行了,复制后不作任何修改,这个表就基本完成了 。
为了让班级课表更完善 , 我绘制了三个较宽的矩形,并分别
推荐阅读
- 手机文件管理删除的照片能恢复吗 照片从文件管理误删了怎么恢复
- 微信如何判断对方删除自己,但不打扰到对方 微信如何判断对方删除自己
- word里一个圆圈里面一个叉怎么打出来?
- 如何查微信删除的好友,如何查微信删除的好友聊天记录
- word如何在方框里打勾√?
- Word中如何设置首字下沉
- Word如何打出下划线
- word怎么插入分页符,怎么删除分页符
- vlookup怎么用?
- word怎么不显示回车符号 word怎么不显示回车符
