VBA实验复习.docx

上传人:b****3 文档编号:5404741 上传时间:2022-12-16 格式:DOCX 页数:14 大小:177.91KB
下载 相关 举报
VBA实验复习.docx_第1页
第1页 / 共14页
VBA实验复习.docx_第2页
第2页 / 共14页
VBA实验复习.docx_第3页
第3页 / 共14页
VBA实验复习.docx_第4页
第4页 / 共14页
VBA实验复习.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

VBA实验复习.docx

《VBA实验复习.docx》由会员分享,可在线阅读,更多相关《VBA实验复习.docx(14页珍藏版)》请在冰豆网上搜索。

VBA实验复习.docx

VBA实验复习

实验

实验三:

1、编程计算分段函数

,并上机运行。

的值用Excel表格输入(x=range(“B2”)),计算出

的结果在Excel表格中输出。

如下图:

第一题

请输入X的值:

计算出Y的值:

要求运行程序,输入x的值(分别为x<0、0<=x<10、x>=10三种情况),检查输出的y值是否正确。

Suba9()

x=Range("B1").Value

Ifx<0Then

Range("B2").Value=x

ElseIfx>=0Andx<10Then

Range("B2").Value=2*x+1

Else

Range("B2").Value=4*x-3

EndIf

EndSub

3、编写程序并运行程序。

输入一个学生的百分制成绩,要求输出相应的等级。

90分以上为“A”,80~90分为“B”,70~79分为“C”,60至69分为“D”,60分以下为“E”。

要求:

1在机上输入上面题目上出现的数据验证程序,并检查结果是否正确。

2再运行程序,验证输入负数和大于100的数值时候,程序是否通知用户“输入数据错误”。

Suba2()

x=Range("c8").Value

Ifx<0Then

Range("c9").Value="输入数据错误!

"

ElseIfx>=0Andx<60Then

Range("c9").Value="你不及格,等级是:

E"

ElseIfx>=60Andx<=69Then

Range("c9").Value="你通过了,等级是:

D"

ElseIfx>=70Andx<=79Then

Range("c9").Value="你通过了,等级是:

C"

ElseIfx>=80Andx<=89Then

Range("c9").Value="你通过了,等级是:

B"

ElseIfx>=90Andx<=100Then

Range("c9").Value="你通过了,等级是:

A"

Else

Range("c9").Value="输入数据错误!

"

EndIf

EndSub

4、用for循环语句,在Excle中显示九九乘法表。

Subcfb()

Dimi,jAsInteger

Range("d1").Value="九九乘法表"

Fori=1To9

Forj=1Toi

Cells(i+1,j).Value=i&"*"&j&"="&i*j

Nextj

Nexti

EndSub

实验四:

1、从键盘上输入一个3位整数,按倒序输出这3位整数.要求当用户输入的不是3位数时候提示重新输入.

Subb()

DimbAsInteger

b=InputBox("请输入一个3位数")

Ifb>100Andb<=999Then

MsgBoxbMod10&(bMod100)\10&b\100

Else

b=InputBox("请重新输入一个3位数")

EndIf

EndSub

 

2、从键盘上输入3个数按升序输出(按从小到大输出)。

方法②

Subbijiao()

Staticx,y,zAsInteger

DimtAsInteger

x=InputBox("输入x:

")

y=InputBox("输入y:

")

z=InputBox("输入z:

")

Ifx

t=x

x=y

y=t

EndIf

Ifz>xThen

MsgBoxz&">"&x&">"&y

ElseIfx>zAndz>yThen

MsgBoxx&">"&z&">"&y

Else

MsgBoxx&">"&y&">"&z

EndIf

EndSub

Suba2()

a=Range("b4").Value

b=Range("c4").Value

c=Range("d4").Value

Ifa>bThen

max1=a

min1=b

Else

max1=b

min1=a

EndIf

Ifmax1

t=max1

max1=c

ElseIfc

t=min1

min1=c

EndIf

Range("b5").Value=min1

Range("c5").Value=t

Range("d5").Value=max1

EndSub

3、已经知道三角形三条边长a,b,c,求三角形面积公式为:

,其中

要求程序上要体现两边之和大于第3边,同时3条边的数值从键盘上输入.

Suba3()

a=Range("c7").Value

b=Range("d7").Value

c=Range("e7").Value

s=(a+b+c)/2

Ifa+b

Range("f7").Value="条件不符合!

"

ElseIfa+c

Range("f7").Value="条件不符合!

"

ElseIfb+c

Range("f7").Value="条件不符合!

"

Else

f=Sqr(s*(s-a)*(s-b)*(s-c))

EndIf

Range("c8").Value=f

EndSub

4、编写一程序判断这个数是否可以被3整除.

Suba4()

a=Range("b12").Value

IfaMod3<>0Then

Range("b13").Value="不能被3整除!

"

Else

Range("b13").Value="能被3整除!

"

EndIf

EndSub

实验五:

1、从键盘上输入一个X,若X为数字则显示“你输入的是数字”,若X为小写字母则显示“你输入的是小写字母”,若X为大写字母则显示“你输入的是大写字母”,否则显示“你输入的是汉字或其他字符”

方法②

Subeg6()

x=Range("c2").Value

Ifx>="a"Andx<="z"Then

Range("c3").Value="你输入的是小写字母。

"

ElseIfx>="A"Andx<="Z"Then

Range("c3").Value="你输入的是大写字母。

"

ElseIfx>="0"Andx<="9"Then

Range("c3").Value="你输入的是数字。

"

EndIf

EndSub

(备注:

用if语句实现)

方法①

Subeg1()

x=InputBox("请输入一个字符:

")

SelectCasex

Case"0"To"9"

MsgBox"那您输入的是数字"

Case"a"To"z"

MsgBox"那您输入的是小写字母!

"

Case"A"To"Z"

MsgBox"那您输入的是大写字母!

"

EndSelect

EndSub

 

3、百钱买百鸡问题:

公鸡5文钱买1只,母鸡3文钱买1只,小鸡1文钱买3只,用100文钱,买100只鸡,问公鸡、母鸡、小鸡各有几只?

Suba()

Dimx,yAsInteger

Forx=1To20

Fory=1To33

If5*x+3*y+(100-x-y)/3=100Then

Range("b11").Value=x

Range("b12").Value=y

Range("b13").Value=100-x-y

EndIf

Nexty

Nextx

EndSub

实验六:

2、编写程序解决爱因斯坦的阶梯问题。

设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;只有每步跨7阶时,正好到阶梯顶。

求至少有多少阶梯?

(不超过300)

Subab()

Fori=1To300

IfiMod2=1AndiMod3=2AndiMod5=4AndiMod6=5AndiMod7=0Then

MsgBoxi

EndIf

Nexti

EndSub

实验七:

1、应用数组知识:

求不确定人数的最高分(从键盘上输入人数)。

Subaa()

Dimcj(),rs,avg,sum,maxAsInteger

sum=0

rs=InputBox("请输人数!

")

ReDimcj(0Tors)

Fori=0Tors-1

cj(i)=InputBox("请输入第"&i+1&"个人的成绩!

")

sum=sum+cj(i)

Next

max=cj(0)

Fori=1Tors-1

Ifmax

max=cj(i)

EndIf

Next

avg=sum/rs(可以省略)

MsgBox"人数为:

"&rs&"!

总分为:

"&sum&"!

平均分为:

"&avg&"!

最高分为:

"&max

EndSub

2、编写一循环程序,计算:

s=1+12+123+1234+12345+…。

项目数通过键盘指定。

Subaaa()

Dimx,sum,tempAsLong?

x=InputBox("请输项数!

")

sum=0

temp=0

Fori=1Tox

temp=temp+i

sum=sum+temp

temp=temp*10

Next

MsgBox"项数和为:

"&sum

EndSub

实验八:

3、编写一过程,实现:

sheet1中的单元格中第1、3行的字体设置为加粗;将区域A4:

C5,E5:

G7,H列的值设置为100。

Sub c()

Range("1:

1").Font.Bold = True

Range("3:

3").Font.Bold = True

Union(Columns(8), Rows(5)).Value = 100

Range("a4:

c5").Value = 100

Range("a5:

g7").Value = 100

End Sub

5、在Excel中,编写程序将当前工作表第1行的所有数据元素逆置。

比如,原始数据为1,5,6,9,8,7,3,2,结果应为2,3,7,8,9,6,5,1

实验九:

4、编写一程序,输出所有“对等数”。

“对等数”是指一个三位数,其各位数字的和与各位数字的积的积等于该数本身。

例如:

144=(1+4+4)*(1*4*4)

 

实验十:

3、根据例1.12要求完成“XX职工资料表”,在该表中输入身份证号码,编写一个函数从身份证号码求生日(sr),编写一函数从身份证号码求性别(xb)。

程序调试通过后,写出该例的关键知识点。

 

实验十一:

3、”销售情况”的excel文档的price工作表保存了某食品公司出售的肉类的品名、价格,sales工作表保存的是该公司部分肉类的销售清单。

编写一过程,核对sales工作表中的单价跟price工作表中的单价是否一致,不同在sales表中用不同的背景颜色标记出来,并在备注中显示价格错。

实验十二:

2、复选钮的使用(编写代码实现下图效果)

1.PrivateSubCheckBox1_Click()

IfCheckBox1.Value=TrueThen

TextBox1.Font.Bold=True

Else

TextBox1.Font.Bold=False

EndIf

EndSub

4、根据上课演示,编写一下代码。

要求输入用户名为“VBA”,密码为“123456”时窗体不见,若输入密码或用户名不对时提示“用户名或密码有误”。

PrivateSubCommandButton1_Click()

IfTextBox1.Text="VBA"AndTextBox2.Text=123456Then

MsgBox"登入!

"

Else

MsgBox"用户名或密码有误!

"

EndIf

UserForm1.Hide

EndSub

5、编写代码实现根据学生姓名查询学生成绩。

 

6、编写自定义函数,自定义函数zj:

根据“职工编号”来,得出职工的“职称”。

(规定:

工龄在三年及以下的,职称为:

助理工程师;三年以上五年以下的,职称为:

工程师;五年以上的为:

高级工程师)

注:

“职工号”第4位开始的4位数字为该职工的“入职年限”)

实验十三:

5、编写窗体过程,输入考生信息及查询考生信息。

(窗体如下图)

实验十四:

4、根据上课演示,编写一下代码。

要求:

A、excel表格如下所示:

B、通过窗体控件,将控件中的相应内容想写到excel表格的对应位置。

(控件如下)

C、当学校没有选择时院系为空

当学校选择“福州大学”则院系可以选择“阳光学院”,“管理学院”,“智诚学院”

当学校选择“福建师范大学”则院系可以选择“外语学院”,“美术学院”,“数计学院”

当学校选择“福建农林大学”则院系可以选择“生命科学学院”,“林学院”,“金山学院”

D、要求:

姓名,性别,学校,院系,年龄不能为空。

实验十五:

2、控件实例

A、初始化窗体:

添加复合框1(学历),内容为大专,本科,研究生,博士。

添加复合框2(籍贯),内容为福建,广东

要求:

当复合框2(籍贯)为空,则复合框3(籍贯)为空。

当复合框2(籍贯)为福建,则复合框3(籍贯)可选为福州,厦门,泉州。

当复合框2(籍贯)为广东,则复合框3(籍贯)可选为广州,深圳。

B、添加按钮:

点击添加按钮,将窗体上对应的内容填写到excel表的对应位置。

要求所有控件不能为空。

C、取消按钮:

清空窗体上所有控件内容。

D、退出按钮:

隐藏窗体

E、查询按钮:

在窗体中输入工号,点查询按钮,则将excel表中对应的信息填到窗体对应位置。

否则显示“工号不存在,请重新检查!

实验十七:

1、在自定义工具栏中添加四个按钮并为其添加相应的图标,如下图:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1