Access第八章VBA.docx

上传人:b****3 文档编号:4958982 上传时间:2022-12-12 格式:DOCX 页数:9 大小:181.39KB
下载 相关 举报
Access第八章VBA.docx_第1页
第1页 / 共9页
Access第八章VBA.docx_第2页
第2页 / 共9页
Access第八章VBA.docx_第3页
第3页 / 共9页
Access第八章VBA.docx_第4页
第4页 / 共9页
Access第八章VBA.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

Access第八章VBA.docx

《Access第八章VBA.docx》由会员分享,可在线阅读,更多相关《Access第八章VBA.docx(9页珍藏版)》请在冰豆网上搜索。

Access第八章VBA.docx

Access第八章VBA

2011年3月

 (23)下列表达式中,能正确表示条件“x和y都是奇数”的是

  A)xMod2=0AndyMod2=0B)xMod2=0OryMod2=0

  C)xMod2=1AndyMod2=1D)xMod2=1OryMod2=1

(24)若在窗体设计过程中,命令按钮Command0的事件属性设置如下图所示,则含义是

A)只能为"进入"事件和"单击"事件编写事件过程

B)不能为"进入"事件和"单击"事件编写事件过程

C)“进入”事件和“单击”事件执行的是同一事件过程

D)已经为“进入”事件和“单击”事件编写了事件过程

(25)若窗体Frm1中有一个命令按钮Cmd1,则窗体和命令按钮的Click事件过程名分别为

  A)Form_Click()     Command1_Click()

  B)Frm1_Click()     Command1_Click()

  C)Form_Click()     Cmd1_Click()

  D)Frm1_Click()     Cmd1_Click()

  (26)在VBA中,能自动检查出来的错误是

  A)语法错误  B)逻辑错误C)运行错误   D)注释错误

  (27)下列给出的选项中,非法的变量名是

  A)Sum    B)Integer_2 C)Rem      D)Form1

  (28)如果在被调用的过程中改变了形参变量的值;但又不影响实参变量本身,这种参数传递方式称为

  A)按值传递   B)按地址传递C)ByRef传递  D)按形参传递

  

  (29)表达式“B=INT(A+0.5)”的功能是

  A)将变量A保留小数点后1位  B)将变量A四舍五入取整

  C)将变量A保留小数点后5位  D)舍去变量A的小数部分

  

  (30)VBA语句“DimNewArray(10)asInteger”的含义是

  A)定义10个整型数构成的数组NewArrayB)定义11个整型数构成的数组NewArray

  C)定义1个值为整型数的变量NewArray(10) D)定义1个值为10的变量NewArray

  (31)运行下列程序段,结果是

  Form=10to1step0

  k=k+3

  Nextm

  A)形成死循环              B)循环体不执行即结束循环

  C)出现语法错误            D)循环体执行一次后结束循环

  (32)运行下列程序,结果是

  PrivateSubCommand32_Click()

  f0=1:

f1=1:

k=1

  DoWhilek<=5

  f=f0+f1

  f0=f1

  f1=f

 k=k+1

  Loop

  MsgBox"f="&f

  EndSub

  A)f=5   B)f=7 C)f=8    D)f=13

  (33)有如下事件程序,运行该程序后输出结果是

  PrivateSubCommand33_Click()

  DimxAsInteger,yAsInteger

  x=1:

y=0

  DoUntily<=25

  y=y+x*x

  x=x+1

  Loop

  MsgBox"x="&x&",y="&y

  EndSub

  A)x=1,y=0    B)x=4,y=25C)x=5,y=30    D)输出其他结果

  (34)下列程序的功能是计算sum=1+(1+3)+(1+3+5)+……+(1+3+5+……+39)

  PrivateSubCommand34_Click()

  t=0:

m=1:

sum=0

  Do

  t=t+m

  sum=sum+t

  m=______

  LoopWhilem<=39

  MsgBox"Sum="&sum

  EndSub

  为保证程序正确完成上述功能,空白处应填入的语句是

  A)m+1   B)m+2C)t+1   D)t+2

(35)下列程序的功能是返回当前窗体的记录集

  SubGetRecNum()

  DimrsAsObject

  Setrs=______

  MsgBoxrs.RecordCount

  EndSub

  为保证程序输出记录集(窗体记录源)的记录数,空白处应填入的语句是

  A)Recordset    B)Me.Recordset C)RecordSource   D)Me.RecordSource

(9)在VBA中要将数值表达式的值转换为字符串,应使用函数str()。

  (10)运行下列程序,输入如下两行:

  Hi,

  Iamhere.

  弹出的窗体中的显示结果是Hi,。

  PrivateSubCommand11_Click()

DimabcAsString,sumAsstring

sum=""

Do

abc=InputBox("输入abc")

IfRight(abc,1)="."ThenExitDo

sum=sum+abc

Loop

MsgBoxsum

EndSub

  (11)运行下列程序,窗体中的显示结果是:

x=21。

  OptionCompareDatabase

  DimxAsInteger

  PrivateSubForm_Load()

  x=3

  EndSub

  PrivateSubCommand11_Click()

  StaticaAsInteger

  DimbAsInteger

  b=x^2

  fun1x,b

  fun1x,b

  MsgBox"x="&x

  EndSub

  Subfun1(ByRefyAsInteger,ByValzAsInteger)

  y=y+z

  z=y-z

  EndSub

  (12)“秒表”窗体中有两个按钮(“开始/停止”按钮bOK,“暂停/继续”按钮bPus);一个显示计时的标签1Num;窗体的“计时器间隔”设为100计时精度为0.1秒。

  要求:

打开窗体如图1所示;第一次单击“开始婷止”按钮,从0开始滚动显示计时(见图2);10秒时单击“暂停/继续”按钮,显示暂停(见图3),但计时还在继续;若20秒后再次单击“暂停/继续”按钮,计时会从30秒开始继续滚动显示;第二次单击“开始/停止”按钮,计时停止,显示最终时间(见图4)。

若再次单击“开始/停止”按钮可重新从0开始计时。

相关的事件程序如下。

请在空白处填入适当的语句,使程序可以完成指定的功能。

  OptionCompareDatabase

  Dimflag,pauseAsBoolean

  PrivateSubbOKClick()

  flag=true

  Me!

bOK.Enabled=True

  Me!

bPus.Enabled=flag

  EndSub

  PrivateSubbPus_Click()

  pause=Notpause

  Me!

bOK.Enabled=NotMe!

bOK.Enabled

  EndSub

  PrivateSubFormOpen(CancelAsInteger)

  flag=False

  pause=False

  Me!

bOK.Enabled=True

  Me!

bPus.Enabled=False

  EndSub

  PrivateSubFormTimer()

  StaticcountAsSingle

  Ifflag=TrueThen

  Ifpause=FalseThen

  Me!

1Num.Caption=Round(count,1)

  EndIf

  count=count+1

Else

  count=0

  EndIf

  EndSub

  (13)数据库中有“学生成绩表”,包括“姓名”、“平时成绩”、“考试成绩”和“期末总评”等字段。

现要根据“平时成绩”和“考试成绩”对学生进行“期末总评”。

规定:

  “平时成绩”加“考试成绩”大于等于85分,则期末总评为“优”,“平时成绩”加“考试成绩”小于60分,则期末总评为“不及格”,其他情况期末总评为“合格”。

  下面的程序按照上述要求计算每名学生的期末总评。

请在空白处填入适当的语句,使程序可以完成指定的功能。

  PrivateSubCommand0_Click()

  DimdbAsDAO.Database

  DimrsAsDAO.Recordset

  Dimpscj,kscj,qmzpAsDAO.Field

  DimcountAsInteger

  Setdb=CurrentDb()

  Setrs=db.OpenRecordset("学生成绩表")

  Setpscj=rs.Fields("平时成绩")

  Setkscj=rs.Fields("考试成绩")

  Setqmzp=rs.Fields("期末总评")

  count=0

  DoWhileNotrs.EOF

  【14】

  Ifpscj+kscj>=85Then

  qmzp="优"

  ElseIfpscj+kscj<60Then

  qmzp="不及格"

  Else

  qmzp="合格"

  EndIf

  rs.Update

  count=count+1

  【15】

  Loop

  rs.Close

  db.Close

  Setrs=Nothing

  Setdb=Nothing

  MsgBox"学生人数:

"&count

  EndSub

2010年9月

(26)要将一个数字字符串转换成对应的数值,应使用的函数是

  A)ValB)SingleC)Asc D)Space

  

  (27)下列变量名中,合法的是

  A)4A B)A-1C)ABC_1D)private

  

  (28)若变量i的初值为8,则下列循环语句中循环体的执行次数为

  DoWhilei<=17

  i=i+2

  Loop

  A)3次B)4次C)5次D)6次

  (29)InputBox函数的返回值类型是

  A)数值B)字符串C)变体D)视输入的数据而定

  

  (30)下列能够交换变量X和Y值的程序段是

  A)Y=X:

X=Y

  B)Z=X:

Y=Z:

X=Y

  C)Z=X:

X=Y:

Y=Z

  D)Z=X:

W=Y:

Y=Z:

X=Y

  

  (31)窗体中有命令按钮Commandl,事件过程如下:

  PublicFunctionf(xAsInteger)AsInteger

  DimyAsInteger

  x=20:

y=2

  f=x*y

  EndFunction

  PrivateSubCommandl_Click()

  DimyAsInteger

  StaticxAsInteger

  x=10

  y=5

  y=f(x)

  Debug.Printx;y

  EndSub

  运行程序,单击命令按钮,则立即窗口中显示的内容是

  A)105B)1040C)205D)2040

  (32)窗体中有命令按钮Commandl和文本框Text1,事件过程如下:

  Functionresult(ByValxAsInteger)AsBoolean

  IfxMod2=0Then

  result=True

  Else

  result=False

  EndIf

  EndFunction

  PrivateSubCommandl_Click()

  x=Val(InputBox(“请输入一个整数”))

  If______Then

  Text1=Str(x)&“是偶数.”

  Else

  Text1=Str(x)&“是奇数.”

  End If

  EndSub

  运行程序,单击命令按钮,输入19,在Text1中会显示“19是奇数”.那么在程序的空白处应填写

  A)result(x)=“偶数”

  B)result(x)

  C)resuIt(x)=“奇数”

  D)NOTresult(x)

  

  (33)窗体有命令按钮Commandl和文本框Textl,对应的事件代码如下:

  PrivateSubCommandl_Click( )

  For i=1 To 4

  x=3

  Forj=1To3

  Fork=1To2

  x=x+3

  Nextk

  Nextj

  Nexti

  Text1.Value=Str(x)

  EndSub

  运行以上事件过程,文本框中的输出是

  A)6B)12C)18D)21

  (34)窗体中有命令按钮run34,对应的事件代码如下:

  PrivateSubrun34_Enter()

  DimnumAsInteger,aAsInteger,bAsInteger,iAsInteger

  Fori=1To10

  num=InputBox(“请输入数据:

”,“输入”)

  IfInt(num/2)=num/2Then

  a=a+1

  Else

  b=b+1

  EndIf

  Nexti

  MsgBox(“运行结果:

a=”&Str(a)&“,b=”&Str(b))

  EndSub

  运行以上事件过程,所完成的功能是

  A)对输入的10个数据求累加和

  B)对输入的10个数据求各自的余数,然后再进行累加

  C)对输入的10个数据分别统计奇数和偶数的个数

  D)对输入的10个数据分别统计整数和非整数的个数

  

  (35)运行下列程序,输入数据8,9,3,0后,窗体中显示结果是

  PrivateSubForm_click()

  DimsumAsInteger,mAsInteger

  sum=0

  Do

  m=InputBox(“输入m”)

  sum=sum+m

  LoopUntilm=0

  MsgBoxsum

  EndSub

  A)0B)17 C)20D)21

(9)在VBA中要判断一个字段的值是否为Null,应该使用的函数是isnull。

(10)一下列程序的功能是求方程:

x2十y2=1000(平方和为1000)的所有整数解。

请在空白处填入适当的语句,使程序完成指定的功能。

  PrivateSubCommandl_Click()

  Dimxasinteger,yasinteger

  Forx=-34To34

  Fory=-34To34

  Ifx*x+y*y=1000Then

  Debug.Printx,y

  EndIf

  Nexty

  Nextx

  EndSub

  (11)下列程序的功能是求算式:

1+1/2!

+1/3!

+1/4!

+……前10项的和(其中n!

的含义是n的阶乘)。

请在空白处填入适当的语句,使程序完成指定的功能。

 PrivateSubCommandl_Click()

  Dimiasinteger,sassingle,aassingle

  a=1:

s=0

  Fori=1To10

  a=a/i

  s=s+a

  Nexti

  Debug.Print“1+1/2!

十1/3!

+.…=”;s

 EndSub

  

  (12)在窗体中有一个名为Command12的命令按钮,Click事件功能是:

接收从键盘输入的10个大于0的不同整数,找出其中的最大值和对应的输入位置。

请在空白处填入适当语句,使程序可以完成指定的功能。

  PrivateSubCommand12_Click()

  max=0

  maxn=0

  fori=1To10

  num=Val(InputBox(‘,请输入第“&i&”个大于0的整数:

“))

  Ifmax

  max=num

  maxn=I

  EndIf

  Nexti

  MsgBox(”最大值为第“&maxn&”个输入的“&max)

  EndSub

(13)数据库的”职I基本情况表“有”姓名“和”职称“等字段,要分别统计教授、副教授和其他人员的数量。

请在空白处填入适当语句,使程序可以完成指定的功能。

  PrivateSubCommands_Click()

  DimdbAsDAO.Database

  DimrsAsDAO.Recordset

  DimzcAsDAO.Field

  DimCountlAsInteger,Count2AsInteger,Count3AsInteger

  Setdb=CurrentDb()

  Setrs=db.OpenRecordset(”职工基本情况表“)

  Setzc=rs.Fields(”职称“)

  Countl=0:

Count2=0:

Count3=0

  DoWhileNotrs.Edit

  SelectCasezc

  CaseIs=”教授“

  Countl=Countl+1

  CaseIs=”副教授“

  Count2=Count2+1

  CaseElse

  Courit3=Count3+1

  EndSelect

  rs.movenext  

Loop

  rs.Close

  Setrs=Nothing

  Setdb=Nothing

  MsgBox”教授:

“&Count1&”,副教授:

“&Count2&”,其他:

“&count3

  EndSub

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

当前位置:首页 > 自然科学 > 数学

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

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