版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用实现自动排列、打印考试座次表考试是学校考查教师教学效果,教师了解学生学习情况,从而提高教学质量的一项常规工作,也是国家选拔人才的重要手段。编排考试座次表这种简单重复的工作,以前考务人员采用复制、粘贴的手段来编排、打印,耗费了大量时间和精力。本人利用制作的这个软件,能自动编排打印考试座次表,从而轻松完成上述工作,为你节约大量的时间和精力。一、准备工作、在xcel中建立一个有张工作表的工作薄,将其名称分别改为:考生名单、人顺序打印、按人首尾相连、按人首尾相连、按人首尾相连;、将“考生名单”工作表按如图格式建好,要求:第一行为标题,第一列存放考号数据,第二列存放班次数据,第三列为姓名,以后各列可有
2、可无,然后按考号(或班次或总分等)排好顺序。、将工作表“顺序打印”、“按人首尾相连”、“按人首尾相连”、“按人首尾相连”分别按图、图、图、图格式建好。其中标题文字、行列的宽高、字体、字型、字号等可按自己的需要作相应的改动。图二、编写代码、 按“人顺序打印”代码在“人顺序打印”工作表中添加一个“按钮”控件,在“指定宏”窗口中将宏名改为“人顺序打印”,单击新建,然后在代码窗口中输入以下头代码:Sub 按40人打印()Dim ipage As Integer, page As Integer, line As Integer, x As Integer,y as Integer, icount As
3、 IntegerApplication.ScreenUpdating = Trueicount = Sheets(考生名单).a1.CurrentRegion.Rows.Count 1 /统计考生人数If icount / 40 = Int(icount / 40) Then /计算考室数 ipage = icount / 40Else ipage = Int(icount / 40) + 1End IfSheets(40人顺序打印).SelectFor page = 0 To ipage 1 /为1至最后考室编排座次 Cells(1, 10) = page + 1 /在第一行第十列填写考室序
4、号 line = page * 40 + 2 /在”考生名单”中查找本考室第一列第一名考生 For x = 4 To 11 /为4至11行填写数据 For y=1 to 19 /为每一行中1至9列中不被4整除的列填写考号、班次、姓名 if y/4int(y/4) thencells(x,y)=Sheets(考生名单).Cells(line+(int(y/4)*8),y-int(y/4)*4) /将”考生名单”中”考号”、“班次”、End If /“姓名”填入座次表相应座位中Next y line = line + 1 /考生下移一位 Next x Sheets(40人顺序打印).PrintOu
5、t /打印本考室座次表Next pageEnd Sub图、 “按人首尾相连”打印代码操作如前“人顺序打印”,代码如下(部分语句注解同前):Sub 按30人首尾相连()Dim ipage As Integer, page As Integer, line As Integer, x As Integer, y As Integer,icount As IntegerApplication.ScreenUpdating = Trueicount = Sheets(考生名单).a1.CurrentRegion.Rows.Count - 1If icount / 30 = Int(icount / 3
6、0) Then ipage = icount / 30Else ipage = Int(icount / 30) + 1End IfSheets(按30人首尾相连).SelectFor page = 0 To ipage - 1 Cells(1, 8) = page + 1 line = page * 30 + 2 /查找第一列第一位考生 For x = 4 To 11 /填写考室第一列考生数据For y= 1 to 3 /填写本列每一考生数据 Cells(x, y) = Sheets(考生名单).Cells(line, y)Next y line = line + 1 /考生下移一位 Nex
7、t x line = page * 30 + 16 /查找第二列第一位考生 For x = 5 To 11 /填写考室第二列考生数据 For y = 5 To 7 /填写本列每一考生数据 Cells(x, y) = Sheets(考生名单).Cells(line, y - 4) Next y line = line 1 /考生前移一位 Next x line = page * 30 + 17 /查找第三列第一位考生 For x = 5 To 11 /填写考室第三列考生数据 For y = 9 To 11 Cells(x, y) = Sheets(考生名单).Cells(line, y - 8)
8、 Next y line = line + 1 /考生下移一位 Next x line = page * 30 + 31 /查找第四列第一位考生 For x = 4 To 11 /填写考室第四列考生数据 For y = 13 To 15 Cells(x, y) = Sheets(考生名单).Cells(line, y - 12) Next y line = line 1 / /考生前移一位 Next xSheets(按30人首尾相连).PrintOutNext pageEnd Sub图、 “按人首尾相连”打印代码操作如前“人顺序打印”,代码如下(部分语句注解同前):Sub 按40人首尾相连()
9、Dim ipage As Integer, page As Integer, line As Integer, x As Integer, y As Integer, icount As IntegerApplication.ScreenUpdating = Trueicount = Sheets(考生名单).a1.CurrentRegion.Rows.Count - 1If icount / 40 = Int(icount / 40) Then ipage = icount / 40Else ipage = Int(icount / 40) + 1End IfSheets(按40人首尾相连)
10、.SelectFor page = 0 To ipage - 1 Cells(1, 10) = page + 1 line = page * 40 + 2 For y = 1 To 5 For x = 4 To 11 If y / 2 Int(y / 2) Then /排列奇数列考生数据,下面三行语也可采用一个循环语句实现 Cells(x, (y - 1) * 4 + 1) = Sheets(考生名单).Cells(line + (y - 1) * 8, 1) Cells(x, (y - 1) * 4 + 2) = Sheets(考生名单).Cells(line + (y - 1) * 8,
11、2) Cells(x, (y - 1) * 4 + 3) = Sheets(考生名单).Cells(line + (y - 1) * 8, 3) line = line + 1 Else /填写偶数列考生数据 Cells(x, (y - 1) * 4 + 1) = Sheets(考生名单).Cells(line + (y - 1) * 8 - 1, 1) Cells(x, (y - 1) * 4 + 2) = Sheets(考生名单).Cells(line + (y - 1) * 8 - 1, 2) Cells(x, (y - 1) * 4 + 3) = Sheets(考生名单).Cells(
12、line + (y - 1) * 8 - 1, 3) line = line - 1 End If Next x Next ySheets(按40人首尾相连).PrintOutNext pageEnd Sub图、 “按人首尾相连”打印代码操作如前“人顺序打印”,代码如下(部分语句注解同前):Sub 按50人首尾相连()Dim ipage As Integer, page As Integer, line As Integer, x As Integer, y As Integer, icount As IntegerApplication.ScreenUpdating = Trueicount
13、 = Sheets(考生名单).a1.CurrentRegion.Rows.Count - 1If icount / 50 = Int(icount / 50) Then ipage = icount / 50Else ipage = Int(icount / 50) + 1End IfSheets(按50人首尾相连).SelectFor page = 0 To ipage - 1 Cells(1, 9) = page + 1 line = page * 50 + 2 For y = 1 To 5 For x = 4 To 13 If y / 2 Int(y / 2) Then Cells(x
14、, (y - 1) * 4 + 1) = Sheets(考生名单).Cells(line + (y - 1) * 10, 1) Cells(x, (y - 1) * 4 + 2) = Sheets(考生名单).Cells(line + (y - 1) * 10, 2) Cells(x, (y - 1) * 4 + 3) = Sheets(考生名单).Cells(line + (y - 1) * 10, 3) line = line + 1 Else Cells(x, (y - 1) * 4 + 1) = Sheets(考生名单).Cells(line + (y - 1) * 10 - 1, 1) Cells(x, (y - 1) * 4 + 2) = Sheets(考生名单).Cells(line + (y - 1) * 10 - 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025内蒙古威信保安押运服务有限责任公司招聘2人模拟笔试试题及答案解析
- 2025河南黄淮学院招聘高层次人才89人模拟笔试试题及答案解析
- 《回收废品》数学课件教案
- 2025广西北海市高德粮库有限公司招聘会计主管1人笔试考试备考试题及答案解析
- 2025贵州康体旅投发展有限公司实习生招聘2人备考笔试题库及答案解析
- 2025年南昌市第一医院编外专技人才自主招聘1人参考考试试题及答案解析
- 2025广西南宁市良庆区大沙田街道办事处招聘工作人员1人参考笔试题库附答案解析
- 2025年金华兰溪市人民医院第二次招聘编外工作人员3人参考考试试题及答案解析
- 2025云南玉溪市江川区医共体总医院招聘编制外人员22人参考考试试题及答案解析
- 网建设平台协议书
- 2026中国人民银行直属事业单位招聘60人备考题库及答案详解(历年真题)
- 技工学校校长2025年度述职报告
- (新教材)2025年人教版七年级上册历史期末复习常考知识点梳理复习提纲(教师版)
- 2025年《刑事诉讼法》重点程序及修正案解析知识考试题库及答案解析
- DB44-T 2507-2024 林下卡亚栽培技术规程
- 具身智能+建筑维修智能检测系统方案可行性报告
- 小学五年级上册语文期中期末必背1-8单元高频考点复习
- 金太阳山西省三晋联盟山西名校2025-2026学年高一上学期11月期中联合考试语文(26-126A)(含答案)
- (光大联考)广东省2026届高三普通高中毕业班第二次调研英语试题(含答案解析)
- 注意缺陷多动障碍(ADHD)基层医疗机构规范化诊疗方案
- 医疗纠纷预防的平台
评论
0/150
提交评论