学生成绩管理系统
1.1  学生成绩管理系统的总体设计
1.2  班级管理模块的设计
1.3  学生名单管理模块的设计
1.4  管理学生成绩模块的设计
1.5  查询学生成绩模块的设计
1.6  成绩统计分析模块的设计
1.7  打印成绩单模块的设计
1.1 学生成绩管理系统的总体设计
对学生考试成绩的管理,是每个学校重要的日常管理工作之一。由于每个学校的考试面广,参加人数
多,如果人工管理学生成绩,将会降低学校的运作效率。而利用Excel VBA开发一个学生成绩管理系统,则可大大提高管理效率。
1.1.1 学生成绩管理系统的构成模块
本章介绍的学生成绩管理系统的模块构成如图1-1所示。本系统由“班级管理”、“学生名单管理”、“登记学生成绩”、“查询学生成绩”、“成绩统计分析”和“打印成绩单”6个模块构成。各个模块的功能介绍如下。
学生成绩管理系统
班级管理学生名单管理登记学生成绩查询学生成绩成绩统计分析打印成绩单
图1-1学生成绩管理系统
(1)班级管理:设置各个年级的班级名称。
(2)学生名单管理:用于管理各班级的学生信息,包括学生的学号、姓名、性别等基本信息。
(3)登记学生成绩:完成学生各学科考试成绩的登记、修改等功能。
(4)查询学生成绩:根据设定的条件查询学生成绩。(5)成绩统计分
析:对各班、各年级的学生考试成绩进行统计分析。(6)打印成绩单:
将学生的考试成绩按班级生成成绩单,并打印出来。
1.1.2 学生成绩管理系统的工作簿设计
建立一个名称为“学生成绩管理系统”的工作簿,将此工作簿的一个工作表重命名为“首页”,在此工作表中插入一个自己喜欢的背景图片。插入一个艺术字“学生成绩管理系统”并设置其格式。插入6个自选图形(矩形),分别在这6个自选图形中添加文字,添加的文字分别为“管理学生名单”、“管理学生成绩”、“查询学生成绩”、“成绩统计分析”、“打印成绩单”和“班级管理”,设置自选图形和文字的格式。插入其他的用于修饰界面的自选图形,并设置其格式。
最后的界面如图1-2所示。
2
数据列表管理与应用
图1-2  学生成绩管理系统界面
1.1.3 为自选图形按钮指定宏
为了在单击首页工作表的6个自选图形时,能够执行相应的操作,为这6个自选图形指定如下的宏,并将它们保存在一个名称为“自定义按钮的指定宏”的标准模块中。
Sub 管理学生名单() '"管理学生名单"按钮
学生管理窗口.Show
End Sub
'"管理学生成绩"按钮Sub 管理学生成绩()
学生成绩管理窗口.Show
End Sub
'"查询学生成绩"按钮Sub 查询学生成绩()
学生成绩查询窗口.Show
End Sub
'"成绩统计分析"按钮Sub 成绩统计分析()
成绩统计分析窗口.Show
End Sub
'"打印成绩单"按钮
Sub 打印成绩单()
打印成绩单窗口.Show
End Sub
'"班级管理"按钮
Sub 班级管理()
'显示工作表"班级管理"
vba做excel窗体录入教程Worksheets("班级管理").Visible = True
Worksheets("班级管理").Activate '激活工作表"班级管理"
End Sub
1.1.4 为工作簿对象编写有关的事件程序
为了在打开系统工作簿时,自动激活“首页”工作表,并将该工作表进行保护。同时
3
将工作簿中除“首页”工作表外的所有工作表隐藏起来,以保护其中的数据(如果用户需要查看某工作表的数据,可以在相应窗体进行有关操作,使隐藏的工作表显示出来)。因此,为工作簿对象设置Open事件,程序代码如下:
Private Sub Workbook _Open()
Dim i As Integer
Worksheets("首页").Activate'激活工作表"首页"
Worksheets("首页").Protect '保护工作表"首页" For i = 1 To
Worksheets.Count
If Worksheets(i).Name <> "首页" Then
Worksheets(i).Visible = False '保护除工作表"首页"外的所有工作表End If
Next i
End Sub
由于在操作时,对学生考试成绩进行了录入、修改等操作,而学生成绩都保存在本系统工作簿的有关工作表中,因此,在关闭系统工作簿之前,要先保存工作簿,为此,对工作簿对象设置BeforeClose事件,程序代码如下:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Close SaveChanges:=True
End Sub
此外,在操作时,我们会激活某些工作表并查看数据,这样,为了能够返回“首页”工作表,并隐藏其他的工作表,应该为工作簿的所有工作表都设置一个能够返回“首页”工作表的事件。为工作簿对象设置SheetBeforeRightClick事件,即单击鼠标右键激活“首页”工作表。工作簿对象的SheetBeforeRightClick事件程序代码如下:
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, _
ByVal Target As Range, Cancel As Boolean)
Dim i As Integer
Cancel = True
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "首页" Then
Worksheets(i).Visible = False
End If
Next i
Worksheets("首页").Activate
End Sub
1.1.5 保护工作表
为了保护“首页”工作表的各个自选图形及其布置,应该对此工作表进行保护。在设计好工作表后,可以通过手工的方法对工作表进行保护。为了保险起见,在工作簿对象的Open 事件程序中,也同时对工作表进行保护。
1.1.6 定义公共变量
定义下面几个公共变量,它们保存在一个名称为“公共变量”的标准模块中:
Public ClassName'保存班级名称的数组变量
Public Class'保存年级名称的数组变量
Public n'保存某年级下的班级数目的数组变量Public m As Integer'保存年级数目
Public p As Integer'保存某班级学生人数

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。