BUG票信息管理系统.docx
《BUG票信息管理系统.docx》由会员分享,可在线阅读,更多相关《BUG票信息管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
BUG票信息管理系统
实验报告
课程名称:
软件项目管理
实验名称:
BUG票信息管理系统
实验类型:
验证性□综合性□设计性□
实验室名称:
9楼机房
班级:
软件09-1班学号:
姓名:
组别:
同组人:
成绩:
实验日期:
一、实验名称
BUG票信息管理系统
二、实验目的
1.学习并了解BUG票的相关知识
2.学习并掌握用Excel开发一个简单的管理系统
3.练习使用VBA编写代码,并且掌握一些编码技巧
三、实验内容和设计思想
1.设计主界面
首先,新建一个Excel文件,使用Excel里面的空间工具箱,添加按钮并设置其属性;实现的主要功能有四个:
添加BUG信息、删除BUG信息、修改BUG信息和查询BUG信息;然后在对这四个功能分别进行设计。
主界面如图1所示:
图1
2.添加功能的界面设计与功能实现
(1)界面设计
使用Excel中VB编辑器设计各个功能的界面。
首先打开VB编辑器,然后插入一个用户窗体,在新插入的窗体中进行界面设计,用鼠标拖地相应的控件可以很方便的设计出各个界面。
添加BUG票信息的界面如图2所示:
图2
(2)代码实现的方法
当单击提交按钮时,首先判断BUG号是否为空,如果为空则显示提示信息“BUG号为空,请输入BUG号!
”;若BUG号不为空,在判断是否和已有的BUG号重复,如果重复则需要重新输入,此时也会显示相应的提示信息;如果各项输入都符合要求,则将新纪录添加到Excel表的末尾。
添加BUG票信息窗体的代码如下:
PrivateSub退出_Click()'单击退出按钮时退出添加窗口
End
EndSub
PrivateSubUserForm_Initialize()'初始化“紧急度”和“现在状态”两个下拉列表
紧急度.List=Array("非常严重","严重","一般","不严重")'给下拉列表设置选项
现在状态.List=Array("未修改","修改中","已修改")
紧急度.Value="严重"'设置默认值
现在状态.Value="未修改"
EndSub
PrivateSub提交_Click()'单击提交按钮时执行以下操作
IfBUG号=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号.SetFocus
ExitSub
EndIf
Dimi,n,flagAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
flag=0
Fori=1Ton'判断BUG号是否和现有的BUG号重复
IfSheet2.Cells(i,1).Value=BUG号.TextThen
flag=1
ExitFor
EndIf
Next
Ifflag=1Then'如果BUG号已经存在,则要重新输入
MsgBox"该BUG票已存在!
"'同时显示提示信息
BUG号.Text=""'把所有输入框都置空以便继续输入
功能名.Text=""
起票人.Text=""
起票日期.Text=""
修改人.Text=""
修改日期.Text=""
BUG号.SetFocus
ExitSub
EndIf
i=n+1'把BUG票信息添加到excel表的末尾
Sheet2.Cells(i,1).Value=BUG号.Value
Sheet2.Cells(i,2).Value=功能名.Value
Sheet2.Cells(i,3).Value=起票人.Value
Sheet2.Cells(i,4).Value=起票日期.Value
Sheet2.Cells(i,5).Value=紧急度.Value
Sheet2.Cells(i,6).Value=现在状态.Value
Sheet2.Cells(i,7).Value=修改人.Value
Sheet2.Cells(i,8).Value=修改日期.Value
MsgBox"添加成功!
"
BUG号.Text=""'添加成功后,把所有输入框都置空以便继续添加
功能名.Text=""
起票人.Text=""
起票日期.Text=""
修改人.Text=""
修改日期.Text=""
BUG号.SetFocus
EndSub
3.删除功能的界面设计与功能实现
(1)删除BUG票信息的界面如图3所示:
图3
(2)代码实现的方法
当单击删除按钮时,首先判断BUG号是否为空,如果为空则显示提示信息“BUG号为空,请输入BUG号!
”;若BUG号不为空,使用for循环在所有的记录中寻找等于输入的BUG号的记录,如果找到后,删除次行,把输入框置空以便继续删除,同时显示提示信息“删除成功!
”,如果没有找到与输入BUG号相同的记录,则显示提示信息“该BUG票不存在!
”,把输入框置空以便再输入。
删除BUG票信息窗体的代码如下:
PrivateSub退出_Click()'单击退出按钮时退出删除窗口
End
EndSub
PrivateSub删除_Click()'单击提交按钮时执行以下操作
IfBUG号=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号.SetFocus
ExitSub
EndIf
Dimi,n,flagAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
flag=0
Fori=1Ton'在所有的记录中寻找等于输入的BUG号的记录
IfSheet2.Cells(i,1).Value=BUG号.TextThen
flag=1
Sheet2.Rows(i).Delete'删除查找到的记录
ExitFor
EndIf
Next
Ifflag=0Then'如果没有找到与输入BUG号相同的记录,则显示提示信息
BUG号.Text=""'输入框置空以便继续输入
MsgBox"该BUG票不存在!
"
BUG号.SetFocus
Else
BUG号.Text=""'如果成功删除记录后,把输入框置空以便继续删除
MsgBox"该BUG票已删除!
"'同时显示提示信息
BUG号.SetFocus
EndIf
EndSub
4.修改功能的界面设计与功能实现
(1)修改BUG票信息的界面如图4所示:
图4
(2)代码实现的方法
当单击提交按钮时,首先判断BUG号是否为空,如果为空则显示提示信息“BUG号为空,请输入BUG号!
”;若BUG号不为空,使用for循环在所有的记录中寻找等于输入的BUG号的记录,如果找到后,将修改后的值重新写回excel表格中的此行,把原来的数据覆盖掉,同时显示提示信息“修改修改!
”,然后把输入框置空以便继续修改,如果没有找到与输入BUG号相同的记录,则将次BUG票信息添加到Excel表个的末尾,把输入框置空以便继续修改。
修改BUG票信息窗体的代码如下:
PrivateSub退出_Click()'单击退出按钮时退出修改窗口
End
EndSub
PrivateSubUserForm_Initialize()'初始化“紧急度”和“现在状态”两个下拉列表
紧急度.List=Array("非常严重","严重","一般","不严重")'给下拉列表设置选项
现在状态.List=Array("未修改","修改中","已修改")
紧急度.Value="严重"'设置默认值
现在状态.Value="未修改"
EndSub
PrivateSub提交_Click()'单击提交按钮时执行以下操作
IfBUG号.Text=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号.SetFocus
ExitSub
EndIf
Dimi,nAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
Fori=1Ton'在所有的记录中寻找等于输入的BUG号的记录
IfSheet2.Cells(i,1).Value=BUG号.TextThen
ExitFor
EndIf
Next
Sheet2.Cells(i,1).Value=BUG号.Value'将修改后的值重新写回excel表格中,覆盖掉原来的数据
Sheet2.Cells(i,2).Value=功能名.Value
Sheet2.Cells(i,3).Value=起票人.Value
Sheet2.Cells(i,4).Value=起票日期.Value
Sheet2.Cells(i,5).Value=紧急度.Value
Sheet2.Cells(i,6).Value=现在状态.Value
Sheet2.Cells(i,7).Value=修改人.Value
Sheet2.Cells(i,8).Value=修改日期.Value
MsgBox"修改成功!
"'提示修改成功
BUG号.Text=""'把所有输入框都置空以便继续修改
功能名.Text=""
起票人.Text=""
起票日期.Text=""
修改人.Text=""
修改日期.Text=""
BUG号.SetFocus
EndSub
5.修改功能的界面设计与功能实现
(1)查询BUG票信息的界面如图5所示:
图5
(2)代码实现的方法
当查询提交按钮时,首先判断BUG号是否为空,如果为空则显示提示信息“BUG号为空,请输入BUG号!
”;若BUG号不为空,使用for循环在所有的记录中寻找等于输入的BUG号的记录,如果找到后,则将查询到的结果输出,如果没有找到与输入BUG号相同的记录,则把输入框置空以便再输入,同时显示提示信息“该BUG票不存在!
”。
查询BUG票信息窗体的代码如下:
PrivateSub退出_Click()'单击退出按钮时退出查询窗口
End
EndSub
PrivateSubUserForm_Initialize()
紧急度.List=Array("非常严重","严重","一般","不严重")'给下拉列表设置选项
现在状态.List=Array("未修改","修改中","已修改")
EndSub
PrivateSub删除_Click()'单击删除按钮时执行以下操作
IfBUG号=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号.SetFocus
ExitSub
EndIf
Dimi,n,flagAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
flag=0
Fori=1Ton'在所有的记录中寻找等于输入的BUG号的记录
IfSheet2.Cells(i,1).Value=BUG号.TextThen
flag=1
Sheet2.Rows(i).Delete'删除查找到的记录
ExitFor
EndIf
Next
Ifflag=0Then'如果没有找到与输入BUG号相同的记录,则显示提示信息
BUG号.Text=""'输入框置空以便继续输入
MsgBox"该BUG票不存在!
"
BUG号.SetFocus
Else
MsgBox"该BUG票已删除"'显示提示信息
End
EndIf
EndSub
PrivateSub修改_Click()'单击修改按钮时执行以下操作
IfBUG号2=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号2.SetFocus
ExitSub
EndIf
Dimi,n,flagAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
flag=0
Fori=1Ton'在所有的记录中寻找等于输入的BUG号的记录
IfSheet2.Cells(i,1).Value=BUG号.TextThen
flag=1
ExitFor
EndIf
Next
Ifflag=0Then
MsgBox"该BUG票不存在!
"
BUG号.SetFocus
Else
Sheet2.Cells(i,1).Value=BUG号2.Value'将修改后的值重新写回excel表格中,覆盖掉原来的数据
Sheet2.Cells(i,2).Value=功能名.Value
Sheet2.Cells(i,3).Value=起票人.Value
Sheet2.Cells(i,4).Value=起票日期.Value
Sheet2.Cells(i,5).Value=紧急度.Value
Sheet2.Cells(i,6).Value=现在状态.Value
Sheet2.Cells(i,7).Value=修改人.Value
Sheet2.Cells(i,8).Value=修改日期.Value
MsgBox"修改成功!
"'提示修改成功
End
EndIf
EndSub
PrivateSubcx_Click()'单击查询按钮时执行以下操作
IfBUG号=""Then'判断BUG号是否为空
MsgBox"BUG号为空,请输入BUG号!
"
BUG号.SetFocus
ExitSub
EndIf
Dimi,nAsInteger
n=Sheet2.UsedRange.Rows.Count'n为已经使用的行数
Fori=1Ton'在所有的记录中寻找等于输入的BUG号的记录
IfSheet2.Cells(i,1).Value=BUG号.TextThen
BUG号2.Text=Sheet2.Cells(i,1).Value'将查找到的记录输出
功能名.Text=Sheet2.Cells(i,2).Value
起票人.Text=Sheet2.Cells(i,3).Value
起票日期.Text=Sheet2.Cells(i,4).Value
紧急度.Text=Sheet2.Cells(i,5).Value
现在状态.Text=Sheet2.Cells(i,6).Value
修改人.Text=Sheet2.Cells(i,7).Value
修改日期.Text=Sheet2.Cells(i,8).Value
ExitFor
EndIf
Next
IfBUG号2.Value=""Then'如果显示框中显示的BUG号为空,则表示没有查到到
BUG号.Text=""'输入框置空以便继续输入
BUG号.SetFocus
MsgBox"该BUG票不存在!
"'显示提示信息
EndIf
EndSub
四、实验总结和心得体会
通过这次试验学习到了许多知识,首先了解了一些BUG票的知识,知道了BUG票包含的一些基本信息,懂得了如何去写一个BUG票;另外,通过这次试验掌握用Excel去开发一个简单的管理系统,对Excel有了更深刻的认识;最后,学会了使用VBA编写代码,并且掌握一些编码技巧。
总之,这次试验增强了自己的实际动手操作能力,在实验中通过遇到问题然后解决问题这一过程学到了许多知识,达到了预期的实验目的。