VBA操作题.docx
《VBA操作题.docx》由会员分享,可在线阅读,更多相关《VBA操作题.docx(21页珍藏版)》请在冰豆网上搜索。
VBA操作题
基本操作1
打开考试文件夹下的工作薄“运行程序1.xlsm”,并在该工作薄的模块1中输入如下程序,并运行。
答案:
运行结果为:
简单应用1
打开考试文件夹下的工作薄“程序改错1.xlsm”,该工作薄的模块1里面有一段代码,该代码的功能是:
计算Sheet1工作表里“学生成绩表”中每个学生的“总分”,并对“总分”进行排序筛选。
要求成绩从大到小排列,筛选出高于平均分的所有成绩。
其中有三个错误行,请改正,使该程序能正确运行。
正确答案:
Sub成绩统计()
DimiAsInteger
DimjAsInteger
DimshtAsWorksheet
Setsht=Worksheets
(1)
j=Range("a1").CurrentRegion.Rows.Count‘有错误
Fori=3Toj
sht.Cells(i,6)=sht.Cells(i,3)+sht.Cells(i,4)+sht.Cells(i,5)
Nexti
EndSub
Sub成绩排名()
num=Range("a1").CurrentRegion.Rows.Count
Range("a2:
"&"f"&num).Sortkey1:
=Range("f:
f"),order1:
=xlDescending,Header:
=xlNo‘有错误
EndSub
Sub成绩筛选()
Range("f2").Select
Selection.AutoFilter
ActiveSheet.Range("A2:
f11").AutoFilterField:
=6,Criteria1:
=_
xlFilterAboveAverage,Operator:
=xlFilterDynamic,visibledropdown:
=True‘有错误
EndSub
综合应用1
在考试文件夹下打开工作薄“表单及控件1.xlsm”,输入正确的账户:
jsj密码:
123456(密码显示为******,设置文本框的password属性)
窗体标题栏显示:
欢迎登录本系统(设置窗体对象的标题)
点击“登录”按钮,显示“登录成功!
“对话框,否则显示对话框“账户或密码错误,请重试!
”点击“取消”按钮,则退出。
正确答案:
PrivateSubCommandButton1_Click()
IfTextBox1.Value="jsj"AndTextBox2.Value="123456"Then
MsgBox"登录成功!
"
Else
MsgBox"账户或密码错误,请重试!
"
EndIf
EndSub
PrivateSubCommandButton2_Click()
UserForm1.Hide
EndSub
基本操作2
在考试文件夹下打开工作薄“运行程序2.xlsm”,并在该工作薄的模块1中输入下段代码并运行。
该段代码的功能为在sheet1的最后一列J列输出津贴补助数据。
宏运行结果如下图所示:
简单应用2
在考试文件夹下打开工作薄“程序改错2.xlsm”,该工作薄的模块中有2段代码,第一个子过程功能为:
复制模板工作表信息,第2个设置字体格式。
其中有三个错误行,要求学生根据注释改正。
不能删除行,不能添加行。
正确答案:
Selection.Cut'复制---Selection.copy'复制
.Caption="华文行楷"--.name="华文行楷"
.Bold=False'设置字体加粗---.Bold=ture
综合应用2
在考试文件夹下打开工作薄“表单及控件2.xlsm”,该文件中有一个登陆窗口。
1.将标签lable1属性caption改为“用户名”,标签lable2属性改为“密码”。
2.将密码标签所对应的文本框,属性passwordchar设置为"*",以占位符显示密码
基本操作3
在考试文件夹下打开工作薄”运行程序3.xlsm”,并在该工作薄的模块1中输入下段代码并运行。
该程序完成100以内的所有偶数的相加,并将加和结果放到工作表sheet1的a1单元格中
宏运行结果如下图所示:
简单应用3
在考试文件夹下打开工作薄“程序改错3.xlsm”,该工作薄的模块1中有一段代码,功能为:
检测档案归还是否逾期,若借阅时间+借阅期限>=归还时间,则为按时归还,否则为逾期。
其中有三个错误行,要求学生改正。
不能删除行,不能添加行。
正确答案:
DimShtasWorksheet
IfSht.Cells(I,3)+Sht.Cells(I,4)>=Sht.Cells(I,5)Then
LoopUntilSht.Cells(I,1)=""
综合应用3
在考试文件夹下打开工作薄“表单及控件3.xlsm”,该文件中有一个窗体,请完成以下操作。
(1)请将窗体中的命令按钮上的文字改为“显示”。
(2)填写命令按钮的单击事件的代码,功能为:
当用户单击该按钮时,文字框中显示“欢迎光临”。
答案:
Textbox1.value=”欢迎光临”
基本操作4
打开考试文件夹下的工作薄“运行程序4.xlsx”,并在该工作薄的模块1中输入如下程序,并运行。
运行成功后保存、退出。
(10分)
运行结果为:
通过输入整形值,可创建整数个工作表
简单应用4
打开考试文件夹下的工作薄“程序改错4.xlsm”,该工作薄的模块1里面有一段代码,该代码的功能是:
截取员工的姓氏与职称连接,制作出尊称信息。
其中有三个错误行,请改正,使该程序能正确运行。
运行成功后保存、退出。
(10分)
'获取姓氏连接职称合并成尊称
Sub制作尊称信息()
DimShtAsWorksheet
SetSht=Worksheets
(2)'***有错误***
'声明变量存放姓氏
DimmyNameAsString
i=2
Do
'如果姓名为复姓,则姓名字符串为4个字符,否则为3个字符
IfLen(Sht.Cells(i,2))=4Then
myName=Left(Sht.Cells(i,2),2)
Else
myName=Left(Sht.Cells(i,2),1)
EndIf
'连接字符串
Sht.Cells(i,6)=myName&Sht.Cells(i,4)
i'***有错误***
LoopUntilSht.Cells(i,1)<>""'***有错误***
EndSub
正确答案:
Setsht=worksheets
(1)
i=i+1
Loopuntilsht.cells(I,1)=””
综合应用4
打开考试文件夹下的工作薄“表单与控件4.xlsm”,进入VBE开发环境,在工作表中创建一个名为“添加边框”的按钮控件,做如下操作:
(5分)
(1)设置该控件上文本的字体格式(“微软雅黑”)、“加粗”、16磅、红色
(2)对齐方式(“居中”)、页边距(“左设置为0.2厘米、右设置为0.2厘米、上设置为0.15厘米、下设置为0.15厘米”)
运行效果如下图所示:
基本操作5
在考试文件夹下打开工作薄“运行程序5.xlsm”,在模块1中输入代码,实现根据面试平均成绩,分优、良、中、差四个等级,高于85为优,低于85高于75为良,低于75高于60为中,低于60分为差。
Subaa()
DimShtAsWorksheet
SetSht=Worksheets
(1)
'声明循环变量并赋初值
DimIAsInteger
I=3
Do
SelectCaseSht.Cells(I,7)
CaseIs>=85
Sht.Cells(I,8)="优"
CaseIs>=75
Sht.Cells(I,8)="良"
CaseIs>=60
Sht.Cells(I,8)="中"
CaseElse
Sht.Cells(I,8)="差"
EndSelect
I=I+1
LoopUntilSht.Cells(I,1)=""
EndSub
运行结果为:
简单应用5
在考试文件夹下打开工作薄“程序改错5.xlsm”,该工作薄的模块1里面有一段代码,其中用*****显示的三行有错误,请改正错误,得到正确结果。
该程序将活动工作簿中第一张工作表上的第三行、第五行和第七行的字体设置为加粗,颜色为红色。
正确结果为:
答案:
SubSeveralRows()
Worksheets("Sheet1").Activate'*****有错误******
DimmyUnionAsRange
SetmyUnion=Union(range(“3:
3”),range(“5:
5”),range(“7:
7”))'*****有错误******
myUnion.Font.Bold=True
myUnion.Font.ColorIndex=3'*****有错误******myunion.font.color=255
EndSub
综合应用5
在考试文件夹下打开工作薄“表单及控件5.xlsm”,在sheet1工作表中插入三个复选框,分别设置与工作表中单元格b2,b3,b4连接。
基本操作6
在考试文件夹下打开工作簿“运行程序6.xlsm”,输入如下代码,运行并得出结果。
该结果为将sheet1工作表中的联系方式的中间4位以*号代替。
结果如图所示:
简单应用6
答案:
简单应用6
答案:
基本操作7
打开“运行程序7.xlsm”文件,为模块一中的过程“改图表为折线图()”编写两行代码,将sheet1中的柱形图,变为拆线图。
答案:
Sub改图表为折线图()
ActiveSheet.ChartObjects
(1).Select
ActiveChart.ChartType=xlLine
EndSub
或
Sub改图表为折线图()
ActiveSheet.ChartObjects.Select
ActiveChart.ChartType=xlLine
EndSub
简单应用7
打开“程序改错7.xlsm”,在模块中有一过程“筛选()”代码已给定,代码有三处错误(已标出哪三行有误),请您修改错误,最终筛选出上半年、下半年,成绩小计都在[500,550]之间的记录,并对筛选后的结果进行排序,按上半年小计升序排列,如下图所示。
答案:
Xland
Fields:
=16
order1:
=xlascending
综合应用7
打开“表单及控件7.xlsm”文件,找到Seach窗体,编写OK_Click、Cancel_Click过程下的代码,实现选择相应的产品编号,就能在窗体中显示Sheet1中相应产品的名称及库存量,如图所示。
单击取消按钮后,窗体消失。
答案:
PrivateSubCancel_Click()
Seach.Hide
EndSub
PrivateSubOK_Click()
Fori=3ToNum
IfSht.Cells(i,1)=myNumber.ValueThen
Lname.Caption=Sht.Cells(i,2)
LNum.Caption=Sht.Cells(i,4)
EndIf
Nexti
EndSub
基本操作8
在考试文件夹下打开工作薄“运行程序8.xlsm”,并在该工作薄的模块1中输入下段代码并运行。
该段代码的功能为隔行隔列设置单元格的底纹为淡紫色。
宏运行结果如下图所示:
简单应用8
在考试文件夹下打开工作薄“程序改错8.xlsm”,该工作薄的模块1中有一段代码,功能为:
统计sheet1工作表中市场部男职工的人数,正确的统计结果为9人。
其中有三个错误行,要求改正。
不能删除行,不能添加行。
正确答案:
dimshtasworksheet
IfSht.Cells(I,5)="市场部"then
MsgBox“市场部男职工人数:
”&PeoN
综合应用8
在考试文件夹下打开工作薄“表单及控件8.xlsm”,该文件中有一个窗体。
(1)请将窗体中的命令按钮上的文字改为“关闭”。
(2)填写命令按钮的单击事件的代码,功能为:
当用户单击该按钮时,关闭该窗体。
正确答案:
Userform1.hide
基本操作9
打开考试文件夹下的工作薄“运行程序9.xlsm”,并在该工作薄的模块1中输入如下程序,并运行。
运行成功后保存、退出。
(10分)
答案:
运行结果为:
简单应用9
打开考试文件夹下的工作薄“程序改错9.xlsm”,该工作薄的模块1里面有一段代码,该代码的功能是:
对于“员工档案表”从A3单元格开始隔行、隔列以同种颜色底纹(淡紫色)填充(运行效果如下图所示)。
其中有四个错误行,请改正(不得删行,也不得插入新行),使该程序能正确运行。
运行成功后保存、退出。
(10分)
正确答案:
Sub格式化表格()
DimShtAsWorksheet'***有错误***
SetSht=Worksheets("Sheet1")'***有错误***
DimRowNAsInteger,ColAsInteger
RowN=Sht.Range("A1").CurrentRegion.Rows.Count
Col=Sht.Range("A1").CurrentRegion.Columns.Count
Fori=3ToRowNStep2
Forj=1ToColStep2
Sht.Cells(i,j).Interior.Color=RGB(255,204,255)'**有错误**
Nextj'***有错误***
Nexti'***有错误***
EndSub
综合应用9
打开考试文件夹下的工作薄“表单及控件9.xlsm”,进入VBE开发环境,在“工程”资源管理器中双击“窗体”选项,再点击UserForm1,将弹出一个窗体。
在该窗体中做如下操作:
(5分)
(1)把窗体的标题文字改为“客户信息浏览”。
(2)把窗体,以及“姓名”、“电话号码”、“工作单位”等三个标签的背景色都改为同一黄色(运行效果如下图所示)。
答案:
(1)单击窗体面板,在“属性”选项里修改“Caption”属性的值为“客户信息浏览”。
(2)窗体背景色:
单击窗体面板,在“属性”选项里选择“BackColor”属性,从调色板中选择黄色。
标签的背景色:
单击标签文字,在“属性”选项里选择“BackColor”属性,从调色板中选择黄色。