2024年4月28日发(作者:)

附录2VBA常用语句

语句名

Call

ChDir

ChDrive

语句说明语法说明

将控制权传递给 Sub 或 Function 过程。即调用

[Call] name [argumentlist]

某个函数或者过程。

更改当前目录或文件夹

更改当前驱动器。

ChDir

path

ChDrive

drive

Close关闭对使用Open语句打开的文件的输入/输出Close [

filenumberlist

]

Const

constname

[As

type

] =

Const

Date

Dim

声明常量。

设置当前系统日期

声明变量

expression

Date = date

Dim

varname

[([

subscripts

])] [As

type

]

Do [{While | Until} 条件]

[语句]

[Exit Do]

[语句]

Loop

End

End Function

End If

End Property

End Select

End Sub

End Type

End With

Enum name

membername [= constantexpression]

membername [= constantexpression]

. . .

End Enum

Erase arraylist

Error

errornumber

Exit Do

Exit For

Exit Function

Exit Property

Exit Sub

FileCopy

source

,

destination

参数说明语句示例

name:过程或者函数名

argumentlist:函数或者过程的参数列表

path:路径。ChDir会更改当前驱动器上的默认目录或文

ChDir "D:TMP"

件夹。

drive:指定现有驱动器的字符串表达式。如果您提供零

ChDrive "D"

长度字符串(""),则当前驱动器不会发生更改。如果

drive参数是多字符字符串,则ChDrive仅使用第一个字

母。

filenumber:是任何有效的文件编号。如果省略

filenumberlist,则由 Open 语句打开的所有活动文件

都将关闭。

constname:常量名

type:数据类型

expression:常量的值

date:指定的日期表达式

varname:变量名

subscripts:下标(适用于数组变量)

type:数据类型

Do...Loop循环语句

End结束过程或块End可以终止所有正在运行的程序

Enum声明枚举类型

name:枚举名称

membername:枚举成员名称

constantexpression:枚举成员值

arraylist:一个或多个要擦除的用逗号分隔的数组变量

Erase arr

errornumber:可以是任何有效的错误号。Error 4001

Erase

Error

重新初始化固定大小数组的元素并释放动态数组

存储空间。

模拟错误的发生。

Exit退出循环、函数、过程

FileCopy复制一个文件

source:源文件的完整路径

destination:目标文件的完整路径

Exce疑难千寻千解VBA入门与提高

附录2VBA常用语句

语句名语句说明

Next对数组或集合中的每个元素循环遍历

Next将一组语句重复指定的次数

Function声明函数的名称、参数和代码。

语法说明

For Each item In collection

[语句]

[Exit For]

[语句]

Next [item]

For counter = start To end [Step

step]

[语句]

[Exit For]

[语句]

Next [counter]

Function name [(arglist)] [As type]

[语句]

[name = expression]

[Exit Function]

[语句]

[name = expression]

End Function

Get [#]filenumber, [recnumber],

varname

ChDir path line

If

condition

Then [

statements

]

[Else

elsestatements

]

或者

If condition Then

[语句]

[ElseIf condition-n Then

[elseif语句]

[Else

[else语句]]

End If

Input #

filenumber, varlist

Kill filename

[Let]

varname

=

expression

Line Input [#]filenumber, varname

Load

object

Mid(

stringvar

,

start

[,

length

]) =

参数说明

item:集合或数组中的元素

collection:集合或者数组

语句示例

counter:计数器变量

start:计数器变量起始值

end:计数器变量终止值

step:计数变量的步长

name:函数名称

arglist:参数列表

type:函数返回值数据类型

Get

GoTo

将打开的磁盘文件中的数据读取到变量中。用于

读取二进制方式打开的文件。

无条件转到过程内的指定行

filenumber:文件号

recnumber:读取文件的位置

varname:接受从文件读取内容的变量名称

line:行号或者行标签

Get #1,,sVAR

If...Els

e

分支结构语句

根据表达式的值,有条件地执行相应的语句

condition:条件判断表达式

Input #

Kill

Let

Line Input #

Load

Mid

MkDir

Name

从打开的顺序文件中读取数据并将此数据分配给

变量

删除硬盘上的文件

将表达式的值赋给变量或属性

将打开的磁盘文件中的整行数据读取到String类

型的变量中

装载对象并不显示

将字符串指定位置的字符替换为其他字符

新建目录或文件夹

重命名磁盘文件、目录或文件夹。当原始文件名

与新文件名路径不一致时,可以实现文件的移动

并且重命名。

string

MkDir pathname

Name

oldname

As newname

filenumber:文件号

varname:接受从文件读取内容的变量名称

filename:文件的完整路径,包括盘符、路径和文件名

。VBA中也支持适用通配符(*)和(?)进行批量的文件

varname:变量名

expression:需要赋值给变量的表达式

filenumber:文件号

varname:接受从文件读取内容的变量名称

object:需要装载的对象

stringvar:需要替换的字符串变量

start:替换字符的起始位置

length:替换字符的长度

string:用于替代的字符

MkDir "D:TMP"

pathname:路径名称

oldname:旧的文件名

newname:新的文件名

Exce疑难千寻千解VBA入门与提高

附录2VBA常用语句

语句名

On Error

语句说明

设定出错时的处理方式

语法说明

On Error GoTo line

On Error Resume Next

On Error GoTo 0

参数说明

line:行号或者行标签

pathname:文件名称

mode:打开方式。可以为Append、Binary、Input、

Output 或 Random

access:访问的方式。可以为Read、Write 或 Read

Write

lock:组织其他程序打开操作文件,可以为Shared、

Lock Read、Lock Write 和 Lock Read Write

filenumber:空闲的文件号

reclength:打开文件的指定位置

设置Dim和Redim语句声明数组下标的默认下限

Binary:二进制比较方式(区分大小写)

Text:文本比较方式(不区分大小写)

filenumber:文件号

outputlist:输出的文本内容。多个内容可以用逗号隔

filenumber:文件号

recnumber:文件的位置

varname:需要输出的内容

number:种子

varname:数组变量

subscipt:数组的下标

type:数组类型

语句示例

Open启用对文件的输入/输出

Open

pathname

For

mode

[Access

access

] [

lock

] As [#]

filenumber

[Len=

reclength

]

Option Base

Option Compare

设置数组下标的默认下限

设置文本的比较方式

Option Base {0|1}

Option Compare {Binary | Text}

Option Explicit

Print #

filenumber

, [

outputlist

]

Put [#]

filenumber

, [

recnumber

],

Option Explicit强制变量声明

Print #

Put

Randomize

ReDim

Reset

Resume

RmDir

SaveSetting

向使用Open方法打开的文件输出文本

向使用Open方法打开的文件输出二进制内容

初始化随机数字生成器

重新定义动态数组的维度、尺寸和类型

关闭使用 Open 语句打开的所有磁盘文件

重新在出错语句处执行

删除磁盘目录或文件夹。

向注册表中写入内容

设置使用 Open 语句为打开的文件中的下一次读

取/写入操作设置位置。

varname

Randomize [

number

]

ReDim [Preserve]

varname

(

subscripts

) [As

type

]

Reset

Resume [0]

Resume Next

Resume line

RmDir

path

SaveSetting

appname

,

section, key,

Put #1,,sVAR

Reset

line:行号或者行标签

path:文件夹或目录的路径

appname:程序名

section:注册表分支

key:注册表键名

setting:键值

filenumber:文件号

position:文件的位置

Resume

RmDir "D:TMP"

SaveSetting "ExcelTip","Amulee", "IQ", 500

setting

Seek [#]

filenumber

,

position

Select Case testexpression

[Case expressionlist-n

[statements-n]]

[Case Else

[elsestatements]]

End Select

SendKeys

string

[,

wait

]

Set

varname

=

expression

SetAttr

filename

,

attributes

Stop

Seek

Seek #1, RecordNumber

Select Case

分支结构语句

根据表达式的值,有条件地执行相应的语句

testexpression:测试表达式

expressionlist-n:分支情形中表达式的值

SendKeys

Set

SetAttr

Stop

模拟键盘向当前活动窗口发送一个或多个键击

将表达式的值赋给对象

设置文件的属性信息

中断程序的执行

string:发送的键

wait:是否立即返回当前程序

varname:对象变量名

expression:需要赋值给对象变量的表达式

filename:文件的完整路径,包括盘符、路径和文件名

SetAttr "TESTFILE", vbHidden + vbReadOnly

Stop

Exce疑难千寻千解VBA入门与提高

附录2VBA常用语句

语句名语句说明

Sub声明一个过程名称、参数

Time设置当前系统时间

在模块级别上定义包含一个或多个元素的用户定

义的数据类型

将装载的对象从内存中删除

对单个对象或用户定义类型执行一系列语句。

将数据写入到顺序文件中。与Print类似。

Type

Unload

With

Write #

语法说明

Sub name [(arglist)]

[语句]

[Exit Sub]

[语句]

End Sub

Time = time

Type varname

elementname [([subscripts])] As type

[elementname [([subscripts])] As

type]

End Type

Unload

object

With object

[语句]

End With

Write #

filenumber

, [

outputlist

]

参数说明

name:过程名称

arglist:参数列表

time:指定的时间表达式

varname:自定义类型名称

elementname:元素名称

subscript:数组下标

type:数据类型

object:需要卸载的对象

object:对象或者自定义类型的变量

filenumber:文件号

outputlist:输出的文本内容。多个内容可以用逗号隔

语句示例

Type Person

FirstName As String

LastName As String

End Type

Dim ClassMates(1 To 100) As Person

Exce疑难千寻千解VBA入门与提高