第八章考点总结.docx

上传人:b****5 文档编号:3374062 上传时间:2022-11-22 格式:DOCX 页数:14 大小:493.41KB
下载 相关 举报
第八章考点总结.docx_第1页
第1页 / 共14页
第八章考点总结.docx_第2页
第2页 / 共14页
第八章考点总结.docx_第3页
第3页 / 共14页
第八章考点总结.docx_第4页
第4页 / 共14页
第八章考点总结.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

第八章考点总结.docx

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

第八章考点总结.docx

第八章考点总结

第八章模块与VBA编程基础考点总结

一、必须掌握的控件属性(课本201页)即课本302页附表C控件属性及其含义

控制控件位置的属性有:

左边距(Left)和上边距(Top)。

控制控件大小的有:

宽度(Width)和高度(Height)。

二、必须掌握的控件事件(事件处理代码为:

控件名称_事件名称)课本308页即附表E常用事件

a、键盘事件:

KeyDown(键按下)、KeyUp(键释放)和KeyPress(键点击)。

b、鼠标事件:

Click(鼠标单击)、DblClick(鼠标双击)、MouseMove(鼠标移动)、MouseDown(鼠标按下)、MouseUP(鼠标释放)。

c、焦点事件:

LostFocus(失去焦点)和GotFocus(得到焦点)。

d、Change事件:

当文本框或组合框的文本部分的内容更改时,Change事件发生。

三、必须掌握的窗体事件(事件处理代码为Form_事件名称)课本308页即附表E常用事件

a、键盘事件:

KeyDown(键按下)、KeyUp(键释放)和KeyPress(键点击)。

b、鼠标事件:

Click(鼠标单击)、DblClick(鼠标双击)、MouseMove(鼠标移动)、MouseDown(鼠标按下)、MouseUP(鼠标释放)。

c、焦点事件:

LostFocus(失去焦点)和GotFocus(得到焦点)。

d、窗体事件:

Open(窗体打开)、Load(窗体加载)、Unload(窗体去加载)、Close(窗体关闭)。

注意:

当打开窗体时,是先Open而后Load,而关闭窗体时,是先Unload而后Close。

e、定时事件Timer:

Timer事件在窗体的TimerInterval属性指定的规则时间间隔内发生。

四、事件处理代码的格式:

在事件的处理代码中,其格式是:

对于窗体事件,其格式是:

Form_事件名称;

而对于控件事件,其格式是:

控件名称_事件名称。

例如:

当文本框的名称为username时,处理其内容变化时的代码为:

username_change();而处理整个窗体的定时发生的代码为:

Form_Timer()。

命令按钮的名称为bt1时,单击事件代码为:

bt1_click();窗体的加载代码是:

Form_Load;

五、VBA程序的书写格式:

(课本206页)

1)一个语句,通用写成一行;当一行写不下时,可以续行符(_)将语句写在下一行。

2)可以使用冒号(:

)将多个语句写在一行中。

3)可以在程序中加入注释语句,以说明程序。

其实现有两种方式:

格式一是Rem注释语句格式二是‘注释语句。

六、控件或窗体属性的访问方式:

(本窗体是指产生事件的窗体或产生事件的控件所在的窗体)(课本210页四.数据库对象变量)

a、访问本窗体的属性:

Me.属性名或者属性名。

如:

Me.Caption=”学生窗体”。

b、访问本窗体中控件的属性:

Me.控件名.属性名或者控件名.属性名

如:

Me.用户名.Value=”张三”或用户名.Value=”张三”。

c、访问其它窗体的属性:

Forms!

窗体名.属性名。

d、访问其它窗体中控件的属性:

Forms!

窗体名.控件名.属性名。

七、变量的作用范围(课本210页三.变量的作用域)

在过程中声明的变量(局部变量),只能在本过程中作用,而在过程外部是不能对其进行访问的。

而在过程外声明的变量(全局变量),在本模块中的所的过程都可对此同一个变量进行访问。

注意:

例子如下:

a、一般是先声明变量而后使用,但也可以直接使用,此时一般是作为局部变量。

b、变量在声明时,都有一个默认值。

数值类型的变量为0,而字符串类型的为空字符串(“”)。

c、当局部变量与全局变量同名时,在过程中优先使用的是局部变量。

八、变量的生命周期(课本210页三.变量的作用域)

局部范围:

在过程中定义的变量,其生命周期是从开始执行时开始,到过程结束时为止。

每次调用时,都是一次新的开始。

但用static定义的局部变量,其持续时间是整个应用程序的时间,多次调用都是同一个变量。

全局范围:

在模块中定义的变量,其生命周期是整个模块的执行时间,多个过程访问是的同一个变量。

九、数组的下标与元素的访问(课本211页五.数组)

数组可以用来保存同类型的多个数据。

使用数组的好处就是数组中的所有值都以一个名称进行存储,并且可以使用下标来单独地标识这些数组元素。

定义的格式:

Dim数组名([下标下界to]下标上界)as数据类型

当省略了下标下界时,其默认的下标下界值是0。

也可以在模块的声明部分使用”OptionBase0/1”语句来将数组的默认下标从0改了1。

定义:

Dimid(9)asInteger

在计算机中的表示方式为:

定义:

Dimid(2to11)asInteger

在计算机中的表示方式为:

从上图的2位置开始的

定义:

Dim座位号(3,1to5)asInteger

在计算机中的表示方式为:

一十、数值函数:

重要(课本213页)附表A

a、abs(数值):

求数值的绝对值。

b、int(数值)和fix(数值)(重要):

都是用来求数值的整数部分。

当数值为正数时,两都的结果相同;但当数值为负数时,int返回小于或等于参数值的第一个负数,而fix返回大于或等于参数值的第一个负数。

如:

int(3.9)=fix(3.9)=3,但int(-3.9)=-4而fix(-3.9)=-3。

c、sqr(数值):

返回数值的平方根。

如sqr(9)=3。

d、Rnd():

返回一个0~1之间的一个单精度数。

e、Sgn(数值):

返回数值的符号。

正数返回1,负数返回-1,0返回0。

一十一、字符函数(重要):

(课本214页)附表A

a、inStr([开始位置,]母字符串,子字符串):

返回子字符串第一次在母字符串中出现的位置。

如没有开始位置,则是指从第一个字符开始(即从1开始)。

如:

inStr(“98765”,”65”)=4。

如在母字符串中找不到,则返回0。

b、len(字符串):

返回字符串中字符的个数。

c、left(字符串,字符个数):

从字符串的左边起截取指定个数的字符。

Right(字符串,字符个数):

从字符串的右边起截取指定个数的字符。

Mid(字符串,开始的位置[,字符个数]):

从字符串的指定位置起截取指定个数的字符,如省略第三个参数,则表示一直截取到最后一个。

例如:

left(“计算机等级考试”,3)=”计算机”,Right(“计算机等级考试”,4)=”等级考试”,Mid(“计算机等级考试”,4)=”等级考试”。

d、space(数值):

返回指定数值的空格字符串。

一十二、日期函数(重要):

(课本215页)

a、Date():

表示系统当前的日期;Time():

表示系统当前的时间;Now():

表示系统当前的日期和时间。

b、Year(日期):

返回指定日期中的年数;Month(日期):

返回指定日期中的月数;

Day(日期):

返回指定日期中的天数;Weekday(日期):

返回指定日期中的星期数,星期日为1。

一十三、类型转换函数:

(课本218页)

a、Asc函数:

Asc(“字符串”),返回字符串首字符的ASCII值。

例如:

Asc(“abcd”),返回值为:

97(a的ASCII值为97)。

b、Chr函数:

Chr(数值),返回ASCII数值对应的字符。

例如:

Chr(97),返回值为:

a

c、Str函数:

Str(数值),将数值转换成相应的字符串,对应的字符串中总有一个字符用来表示数值的正负。

例如:

Len(Str(99))=3,而Len(Str(-6))=2。

(重要)

d、Val函数:

Val(“字符串”),将字符串转换成数值。

注意:

其能自动去掉字符串中的空格、制表符和换行符,

并且直到第一个非数值字符为止。

例如:

Val(“345”)=345,而Val(“345abc678”)=345(重要)

e、Nz函数:

Nz(表达式[,指定值]),当表达式的值为空(null)时,将其值转换成0、空字符串(“”)或指定的值。

例如:

Val(Nz(InputBox(“请输入分数”,”60”)),相当于指定了输入默认值为60。

一十四、算术运算符(课本219页)

算术运算符有乘幂(^)、乘法(*)、除法(/)、整数除法(\)、求模运算(mod)、加法(+)及减法(-)。

注意:

1)整数除法时,若操作数有小数,则先取整后再运算,其结果也仅取整数。

取整是仅要数值的整数部分,不进行四舍五入。

例如:

9.8\2=4

2)求模运算时,若操作数有小数,则选进行四舍五入后再进行运算,其结果的符号仅与被除数的相同。

例如:

-9.8mod3=-1

3)运算的优先级从高到低:

乘幂、乘法与除法、整数除法、求模运算、加法与减法。

例如:

3*3\3/3=9

一十五、连接运算符(课本220页)

字符串连接运算符能将两个操作数连接成一个字符串,有”&”和”+”两个。

注意:

1)“&”运算符是将两个操作数强制当作字符串连接。

例如:

”2+3”&“=”&(2+3)结果为”2+3=5”

2)“+”运算符是将两个字符串连接成一个字符串。

即仅当两个操作数都是字符串时,才能进行连接。

一十六、运算符的优先级(课本220页)

不同运算符间的优先级从高到低为:

算术运算符>连接运算符>关系运算符>逻辑运算符>赋值运算符。

例如:

a=10:

b=5:

c=6

MsgBoxa=b+c结果为:

0,原因是a=b+c整个当作一个表达式,关系运算符>赋值运算符(10=11为假)

一十七、控制语句:

条件与循环语句(课本220页)笔试题容易出,重点讲

条件语句的:

if…then…endif和SelectCase…EndSelect结构。

而循环语句有:

for…next和do…loop结构。

对于此类型的题目,最好的方法是逐一的写出其执行的完整过程,最后得出结果。

从考试题目来看,一般只要几步都可以得出结果。

如下所示:

例一:

n=10;m=l;k=1

DoWhilek<=n

m=m*2

k=k+1

Loop

MsgBoxm1024

一十八、条件函数(课本226页)

一十九、按值传递参数(课本236页)

当在进行声明时,如果在形参名称前使用了ByVal关键字的话,则是按值传递参数。

其特征时,当将实参的值赋值给形参之后,两者之间没有了任何关系。

即以后在过程上修改了形参的值,对实参没有任何的影响。

Subswap(ByValaasInteger,ByValbasInteger)

Dimcasinterger

C=a:

a=b:

b=c

Endsub

X=10:

y=20

Swap(x,y)

分析:

因为声明时,参数名称前有ByVal关键字,故是按值传递参数的形式。

在调用时,将实参的值赋给相应的形参:

a=x=10,b=y=20,之后,a与x,b与y之间就是独立的不同变量。

当执行交换语句后,a与b的值进行了交换,即a=20,b=10。

此时,x与y的值不受影响,还是原值,即x=10,y=20.

二十、按引用传递参数(课本236页)

当在进行声明时,如果在形参名称前使用了ByRef关键字的话,则是按引用传递参数。

其特征时,实参与形参相应于同一个变量。

即以后在过程上修改了形参的值,就相当于修改了实参的值。

注意:

当参数名称前没有ByVal或ByRef时,其默认是按引用传递参数(ByRef)。

Subswap(ByRefaasInteger,ByRefbasInteger)

Dimcasinterger

C=a:

a=b:

b=c

Endsub

X=10:

y=20

Swap(x,y)

分析:

因为声明时,参数名称前有ByRef关键字,故是按引用传递参数的形式,此时,a相当于x,b相当于是y.

交换前,a=x=10,b=y=20

交换后,x=a=20,y=b=10

二十一、消息框(MsgBox)(课本248页)或者是附表A

消息框用于在对话框中显示消息、等待用户单击按钮,并返回一个整数值告诉用户单击哪一个按钮。

其格式为:

MsgBox“提示的内容”,对话框的类型,”提示的标题”。

其中对话框的类型的值有:

同时,在MsgBox中还可以显示一些标志信息,例如提问等,不同的标志信息和按钮可以使用“+”号连接起来共同显示,例如,下面的代码运行效果如下图所示:

MsgBox“确实要删除数据吗?

”,vbQuestion+vbYesNo,”删除数据”

二十二、VBA程序中执行宏操作的方式(课本247页)

在VBA程序中,可以通过DoCmd对象来操纵所有的宏操作。

考试考得多的宏操作有:

打开表(OpenTable)、打开查询(OpenQuery)、打开窗体(OpenForm)、打开报表(OpenReport)、打开宏(OpenMacro)以及对这些对象的关闭操作(Close)。

二十三、数据库编程方式:

VBA中提供了三种数据库访问方式:

ODBC,开放数据库互连;DAO,数据访问对象;ADO,Active数据对象。

二十四、DAO编程

(一)DAO模型结构(课本260页)

DBEngine:

是DAO模型的最上层对象,而且包含并控制DAO模型中的其他全部对象。

Workspace:

表示一个工作区,代表一种访问数据库的方式。

默认的是DAO方式。

Database:

代表打开的一个数据库,可对其进行操作。

RecordSet:

代表数据访问所返回的一个记录集。

Field:

代表记录集中的一个字段。

(二)通过DAO访问数据(课本260页)

(三)通过DAO更新数据

subupdateData()

‘第一部分:

定义相应的变量

DimwsasDAO.Workspace

DimdbasDAO.Database

DimrsasDAO.Recordset

DimfdasDAO.Field

‘第二部分:

访问数据库

setws=DBEngine.Workspaces(0)

setdb=ws.OpenDatabase(“c:

\教学管理数

据.mdb”)

setrs=db.OpenRecordSet(“学生表”)

setfd=rs.Fields(“姓名”)

‘第三部分:

遍历记录集中的每一行

dowhileNotrs.eof

rs.Edit

fd=fd&“a”

rs.Update

rs.MoveNext

loop

‘第四部分:

关闭

rs.Close

db.Close

setrs=Nothing

setdb=Nothing

二十五、ADO编程:

重要

(一)ADO对象(课本261页)

Connection:

代表与数据库建立的一个连接对象,就好象一个通道。

Commend:

代表一个SQL命令。

RecordSet:

代表数据访问所返回的一个记录集。

Field:

代表记录集中的一个字段。

(二)通过ADO访问数据(课本267页)

sublookData()

‘第一部分:

定义相应的变量

DimcnasADODB.Connection

DimrsasADODB.Recordset

DimfdasADODB.Field

‘第二部分:

访问数据库

cn.Provider=”Microsoft.Jet.OLEDB.4.0”

cn.Open“c:

\教学管理数据.mdb”

rs.Open“学生表”,cn

setfd=rs.Fields(“姓名”)

‘第三部分:

遍历记录集中的每一行

dowhileNotrs.eof

Debug.printfd

rs.MoveNext

loop

‘第四部分:

关闭

rs.Close

db.Close

setrs=Nothing

setdb=Nothing

endsub

(三)通过ADO更新数据

subupdateData()

‘第一部分:

定义相应的变量

DimcnasADODB.Connection

DimrsasADODB.Recordset

DimfdasADODB.Field

‘第二部分:

访问数据库

cn.Provider=”Microsoft.Jet.OLEDB.4.0”

cn.Open“c:

\教学管理数据.mdb”

rs.Open“学生表”,cn

setfd=rs.Fields(“姓名”)

‘第三部分:

遍历记录集中的每一行

dowhileNotrs.eof

rs.Edit

fd=fd&“a”

rs.Update

rs.MoveNext

loop

‘第四部分:

关闭

rs.Close

db.Close

setrs=Nothing

setdb=Nothing

endsub

二十六、访问数据库的函数:

重要(课本277页)

下列四个函数可以用来直接访问记录集中的数据。

格式为:

函数名(字段名称,记录集[,条件]),其中记录集可以是表、查询或SQL语句。

1、DCount函数:

返加指定记录集中的记录个数。

2、DAvg函数:

返加指定记录集中某字段的平均值。

3、DSum函数:

返加指定记录集中某字段的总和。

4、DLookup函数:

返回指定记录集中某字段的值。

(课本278页)

例子1:

在一个文本框中显示所有女教师的总人数。

则在文本框的控件来源中填入:

=Dcount(“编号”,”教师表”,”性别=’女’”)

例子2:

根据窗体上一个文本框控件(名为tNum)中输入的课程编号,而从课程表里对应的课程名称显示在另一个文本框控件(名为tName)中。

PrivatesubtNum_AfterUpdate()

Me.tName=DLookup(“课程名称”,”课程表”,”编号=’”&me.tNum&“’”

注意:

在SQL语句的条件中,当字段的内容为字符串型的时,要用单引号括起来的。

例如:

姓名为张三的学生,应写成:

姓名=’张三’

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

当前位置:首页 > 小学教育 > 学科竞赛

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

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