基于VBA开发成绩分析管理系统Word文件下载.docx
- 文档编号:16527792
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:39
- 大小:379.07KB
基于VBA开发成绩分析管理系统Word文件下载.docx
《基于VBA开发成绩分析管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于VBA开发成绩分析管理系统Word文件下载.docx(39页珍藏版)》请在冰豆网上搜索。
于是,在这种形势下,一种更适合用户体验的成绩分析系统成为了使用者的迫切需求,基于VBA技术的成绩分析系统采用的是以Excel形式对成绩信息进行分析管理的模式,它无需与数据库进行连接,同时要求的环境配置非常低,用户非常容易上手操作,这种系统在现今这种状态下非常值得提倡使用。
2.2基于VBA技术的应用
2.2.1VBA简介
VisualBasicforApplications(VBA)是一种VisualBasic的一种宏语言,主要能用来扩展Windows的应用程式功能。
也可说是一种应用程式视觉化的BasicScript。
2.2.2VBA与其他开发技术的比较
MicrosoftOfficesoftware的普及使得人们常见的Office软件中的Word、Excel、Access、Powerpoint都可以利用VBA使这些软件的应用更高效率,例如:
通过一段VBA代码,可以实现画面的切换和复杂逻辑的统计。
第三章成绩分析系统设计与实现
3.1系统结构
本成绩分析系统从功能上划分以下两个模块:
学生成绩分析模块,学生信息查询模块,以下对这两个模块进行详细的说明。
学生成绩分析模块:
该模块可以对整个年级的学生成绩信息进行排名,并通过输入班级名生成班级成绩表,另外该模块还可以对每一科目的成绩进行分析。
如果在管理员想查询某次考试的缺考人员信息,可以通过点击主界面的缺考人员名单进行查询分析。
同时,可以对数据信息进行维护与查错。
学生信息查询模块:
该模块是学生用来查询个人信息包括个人成绩查询,个人成绩排名查询,单科成绩的详细情况查询以及对个人档案信息的简单维护,同时如果学生为了保证信息安全需要定期修改个人密码,只需要点击主界面上的修改密码选项即可以轻松实现密码的修改。
系统整体模块如图3-1所示:
图3-1系统整体模块结构图
3.2程序逻辑
3.2.1系统E-R图
系统E-R图如图3-2所示。
图3-2系统E-R图
3.2.2查询模块流程图
查询模块流程图如图3-3所示。
图3-3查询模块流程图
3.2.3分析模块流程图
分析模块流程图如图3-4所示。
图3-4分析模块流程图
3.3主程序设计说明
3.3.1用户登录模块
成绩分析系统的用户登录模块如图3-5所示:
图3-5成绩分析系统登录模块
用户登录类别分为两种:
管理员与学生,其中学生具有查询个人信息的权限而无法查看其他学生、班级等信息。
管理员同样不能登陆学生信息主界面,管理员具有对全年级学生信息进行操作的权限,包括对成绩信息的分析,查询,对学生档案信息的查询等。
通过下面的表格,可以清楚的看到管理员的登录号和密码以及相关权限。
表3-1登陆用户信息
用户类别
管理员
学生
登录号
88888
12001
密码
123
操作权限
成绩分析、成绩查询、统计人数、科目分析、数据错误检查维护、缺考人员名单查询等
个人成绩查询,个人排名查询,单科成绩分析,个人密码修改,档案信息维护等
具体实现过程如下代码所示:
PrivateSubCommandButton1_Click()
zc=Sheets("
登录"
).Range("
A65536"
).End(xlUp).Row
IfTextBox1.Value="
"
ThenMsgBox"
请输入登录号"
vbOKOnly,"
错误"
Fori=2Tozc
IfTextBox1.Text=Sheets("
).Cells(i,1)Then
IfTextBox2.Text=Sheets("
).Cells(i,3)Then
Application.StatusBar="
当前用户为:
&
Sheets("
).Cells(i,1)&
"
;
姓名为:
).Cells(i,2)&
身份为:
).Cells(i,4)
登录.Hide
IfSheets("
).Cells(i,4)="
学生"
Then
主界面2.Show
Else
主界面1.Show
EndIf
MsgBox"
密码错误!
ExitFor
Nexti
Ifi>
zcThen:
MsgBox"
登录号不存在!
EndSub
当用学生的账号和密码登录时,可以进入学生个人成绩查询模块;
当用管理员的账号和密码登录时,可以进入学生成绩分析模块。
3.3.2系统设计
本系统分为学生个人成绩查询模块与学生成绩分析模块。
1.学生个人成绩查询模块
其中学生个人成绩查询主界面如图3-6所示:
图3-6学生成绩查询模块
学生通过登陆窗口输入登录号与密码进入此目录,在此目录下,学生可以查看个人成绩、个人排名、单科成绩以及档案等信息。
(1)个人成绩查询功能实现
通过点击个人成绩查询,可以看到如图3-7:
图3-7个人成绩查询结果
该按钮其功能主要是学生用来查询个人成绩信息,主要代码如下图所示:
Setsth=Sheets("
成绩表"
)
yh=Mid(Application.StatusBar,7,WorksheetFunction.Find("
Application.StatusBar)-7)
Fori=2Tosth.Range("
B65536"
Ifsth.Cells(i,3)=Val(yh)ThenExitFor
Label2.Caption=sth.Cells(i,2)
Label18.Caption=sth.Cells(i,3)
Label3.Caption=sth.Cells(1,"
E"
Label4.Caption=sth.Cells(1,"
F"
Label5.Caption=sth.Cells(1,"
G"
Label6.Caption=sth.Cells(1,"
H"
Label7.Caption=sth.Cells(1,"
I"
Label8.Caption=sth.Cells(1,"
J"
Label10.Caption=sth.Cells(i,"
Label11.Caption=sth.Cells(i,"
Label12.Caption=sth.Cells(i,"
Label13.Caption=sth.Cells(i,"
Label14.Caption=sth.Cells(i,"
Label15.Caption=sth.Cells(i,"
Label16.Caption=WorksheetFunction.Sum(sth.Range("
i&
:
i))
(2)个人排名查询功能实现
通过点击该功能,可以看到如下结果,如图3-8所示:
图3-8个人成绩排名
学生通过点击该按钮,可以查看自己的成绩排名,主要代码如下图所示:
zccjb=sth.Range("
Label2.Caption=yh
Label4.Caption=sth.Cells(i,2)
bj=sth.Cells(i,"
D"
cj=WorksheetFunction.Sum(sth.Range("
Label8.Caption=cj
m1=1
m2=1
Forj=2Tozccjb
IfWorksheetFunction.Sum(sth.Range("
j&
j))>
cjThen
m2=m2+1
Ifsth.Cells(j,"
)=bjThenm1=m1+1
Nextj
Label9.Caption=m1
Label10.Caption=m2
(3)单科成绩分析功能实现
当你点击单科成绩分析时,会要求你选择分析的科目如下图3-9所示:
图3-9单科成绩分析
比如选择了“语文”这门课程,当你点击确定时,就能将“语文”的成绩分析结果显示出来,如下图3-10所示:
图3-10单科成绩查询结果
该按钮是用来对单科成绩进行分析的,其功能主要代码如下图所示:
Fori=2Tozccjb
km=Sheets("
主界面"
).Cells(40,1)
Label6.Caption=sth.Cells(i,4)
Forj=5To9
Ifsth.Cells(1,j)=kmThenExitFor
科目分析结果.Caption="
["
km&
]成绩分析结果"
Label14.Caption=sth.Cells(i,j)
mcbj=1
mcbjmax=sth.Cells(i,j)
mcnj=1
mcnjmax=sth.Cells(i,j)
Fork=2Tozccjb
Ifsth.Cells(k,j)>
sth.Cells(i,j)Then
mcnj=mcnj+1
mcnjmaxThenmcnjmax=sth.Cells(k,j)
Ifsth.Cells(k,"
)=sth.Cells(i,"
)Then
mcbj=mcbj+1
mcbjmaxThenmcbjmax=sth.Cells(k,j)
Nextk
Label15.Caption=mcbj
Label16.Caption=mcbjmax
Label17.Caption=mcnj
Label18.Caption=mcnjmax
(5)密码修改功能实现
该功能顾名思义是学生用来修改个人密码的,如下图3-11所示:
图3-11密码修改
可以通过该窗口随时更换学生的个人密码。
学生为了保护个人数据,需要定期修改密码,该密码修改功能主要代码如下图所示:
IfTextBox2.Text<
>
TextBox3.TextThen
新密码确认错误!
失败了"
ExitSub
Application.StatusBar)-1)
Fori=2ToSheets("
).Cells(i,1)=Val(yh)Then
).Cells(i,3)=TextBox1.TextThen
Sheets("
).Cells(i,3)=TextBox2.Text
密码修改成功!
成功了"
错误的原密码!
(6)档案信息维护功能实现
通过点击个人档案维护,会出现如下窗口,学生可以通过该窗口修改个人基本档案信息。
图3-12个人档案信息维护
学生可以对其档案进行维护,其功能主要代码如下图所示:
学生花名册"
xh=Mid(Application.StatusBar,7,WorksheetFunction.Find("
Ifsth.Cells(i,1)=Val(xh)ThenExitFor
sth.Cells(i,5)=TextBox4.Text
sth.Cells(i,6)=TextBox5.Text
sth.Cells(i,7)=TextBox6.Text
sth.Cells(i,8)=TextBox7.Text
sth.Cells(i,4)=TextBox8.Text
sth.Cells(i,9)=TextBox9.Text
sth.Cells(i,10)=TextBox10.Text
sth.Cells(i,11)=TextBox11.Text
ThisWorkbook.Save
2.成绩分析模块
而成绩分析的主界面如图3-13所示:
图3-13成绩分析主目录
管理员在该目录下,可以对年级信息进行排名,统计年级前N名的人数,同时能够对科目进行分段分析以及查看各班级的成绩。
另外,管理员还能够对每次缺考的学生进行分析查询。
(1)年级排名功能实现
当管理员点击年级排名时,会得到全年级学生成绩排名,如图3-14所示:
图3-14年级排名
该按钮是管理员用来对整个年级的学生成绩信息进行排名分析,实现此功能主要代码如下图所示:
Application.DisplayAlerts=False
ForEachwInThisWorkbook.Sheets
Ifw.Name="
年级排名"
cz=MsgBox("
存在[年级排名]表,是否确定删除后重新开始?
vbYesNo,"
是否继续操作"
Ifcz=vbYesThenSheets("
).DeleteElse:
ExitSub
Nextw
Application.DisplayAlerts=True
gs=Sheets.Count+1
Sheets.Addafter:
=Sheets(gs-1)
Sheets(gs).Name="
).Cells.CopyDestination:
=Sheets(gs).Range("
A1"
Sheets(gs).Range("
K1:
L1"
)=Array("
总分"
"
名次"
zccjb=Sheets(gs).Range("
Sheets(gs).Cells(i,"
K"
)=WorksheetFunction.Sum(Sheets(gs).Range("
A2:
zccjb).SortKey1:
=Range("
K2"
),Order1:
=xlDescending
Sheets(gs).Cells(j,"
A"
)=j-1
IfSheets(gs).Cells(j,"
)=Sheets(gs).Cells(j-1,"
L"
J1"
).Copy
).PasteSpecialPaste:
=xlPasteFormats
E2"
K2:
zccjb).PasteSpecialPaste:
Application.CutCopyMode=False
Range("
B1"
).Select
(2)年级前N名人数统计功能实现
当运行此功能时,会要求管理员输入需要统计的人数,如图3-15。
图3-15输入人数n
如需要统计20人,就可以输入“20”,通过点击确定按钮即可得到统计结果,如图3-16所示。
图3-16年级前n名
如果需要对年级前N名学生人数进行统计,那么该按钮即可实现,实现其功能的主要代码如下图所示:
Fori=1ToSheets.Count
IfSheets(i).Name="
前N名人数统计"
IfMsgBox("
已存在[前N名人数统计]表,是否要删除?
已存在"
)=vbYesThen
).Delete
ThenExitFor
Sheets.CountThen
在未形成年级排名表前无法进行前N名人数统计,"
Chr(13)&
请先生成年级排名表!
!
vbYesonly,"
注意"
n=Val(Application.InputBox(prompt:
="
请输入需要需要统计的人数(n值):
Title:
请输入数字"
))
Setsth1=Sheets("
z
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VBA 开发 成绩 分析 管理 系统