EXCELVBA方法参考手册.docx

上传人:b****6 文档编号:7778006 上传时间:2023-01-26 格式:DOCX 页数:50 大小:101.68KB
下载 相关 举报
EXCELVBA方法参考手册.docx_第1页
第1页 / 共50页
EXCELVBA方法参考手册.docx_第2页
第2页 / 共50页
EXCELVBA方法参考手册.docx_第3页
第3页 / 共50页
EXCELVBA方法参考手册.docx_第4页
第4页 / 共50页
EXCELVBA方法参考手册.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

EXCELVBA方法参考手册.docx

《EXCELVBA方法参考手册.docx》由会员分享,可在线阅读,更多相关《EXCELVBA方法参考手册.docx(50页珍藏版)》请在冰豆网上搜索。

EXCELVBA方法参考手册.docx

EXCELVBA方法参考手册

 

EXCEL-VBA方法参考手册

ExcelVBA学习资料

 

摘自Excel2003VBA帮助

2006年12月29日

一些对象的应用方法

1、Collection对象

⑴ADD方法、⑵Item方法、⑶Remove方法

2、Debug对象

⑴Assert方法、⑵Print方法

3、Dictionary对象

⑴Add方法(Dictionary)、⑵Exists方法、⑶Items方法、⑷Keys方法、⑸Remove方法、⑹Remove方法(FileSystemObject对象)、⑺RemoveAll方法、

4、Err对象

⑴Clear方法、⑵Raise方法

5、File对象、Folder对象

⑴Copy方法、⑵Delete方法、⑶CreateTextFile方法(Folder对象)、⑷Move方法、⑸OpenAsTextStream方法(File对象)

6、Folders集合

⑴Add方法(Folders)

7、FileSystemObject对象

⑴BuildPath方法、⑵CopyFile方法、⑶CopyFolder方法、⑷CreateFolder方法、⑸CreateTextFile方法、⑹DeleteFile方法、⑺DeleteFolder方法、⑻DriveExists方法、⑼FileExists方法、⑽GetAbsolutePathName方法、⑾GetBaseName方法、⑿GetExtensionName方法、⒀GetFile方法、⒁GetFileName方法、⒂GetFolder方法、⒃GetParentFolderName方法、⒄GetSpecialFolder方法、⒅GetTempName方法、⒆MoveFile方法、⒇MoveFolder方法、(21)OpenTextFile方法

8、UserForm对象,UserForms集合对象

⑴Hide方法、⑵PrintForm方法、⑶Show方法、⑷WhatsThisMode方法

9、TextStream对象

⑴Close方法、⑵Read方法、⑶ReadAll方法、⑷ReadLine方法、⑸Skip方法、⑹SkipLine方法、⑺Write方法、⑻WriteBlankLines方法、⑼WriteLine方法

Add方法

添加一个成员到Collection对象。

语法

object.Additem,key,before,after

Add方法的语法具有下列对象限定符和命名参数:

部分

描述

object

必需的。

对象表达式,其值为“应用于”列表中的对象。

item

必需的。

任意类型的表达式,指定要添加到集合中的成员。

key

可选的。

唯一字符串表达式,指定可以使用的键字符串,代替位置索引来访问集合中的成员。

before

可选的。

表达式,指定集合中的相对位置。

在集合中将添加的成员放置在before参数识别的成员之前。

如果为一数值表达式,则before必须是介于1和集合Count属性值之间的值。

如果为一字符串表达式,则当添加一个被引用的成员到集合时,before必须对应于指定的key值。

可以指定before位置或after位置,但不能同时指定这两个位置。

after

可选。

表达式,指定集合中的相对位置。

在集合中将添加的成员放置在After参数识别的成员之后。

如果为一数值表达式,则after必须是介于1和集合Count属性值之间的值;如果为一字符串表达式,则当添加一个被引用的成员到集合时,after必须对应于指定的key值。

可以指定before位置或after位置,但不能同时指定这两个位置。

说明

before或after参数是字符串表达式或数值表达式,均须引用集合中现有成员,否则将导致错误发生。

如果指定的key和集合中现有成员的key发生重复,则也会导致错误发生。

1、应用于Collection对象

2、请参阅Item方法、Remove方法

Add方法示例

本示例使用Add方法将Inst对象(类Class1之示例,其中包含Public变量InstanceName)加到MyClasses集合对象中。

若要观察程序的运作,插入一个类模块,并在Class1的模块级中声明公用变量InstanceName(键入PublicInstanceName)来保存每个示例的名称。

类名就用缺省的Class1。

将下列代码复制与粘贴到某个窗体模块的Form_Load事件过程中。

DimMyClassesAsNewCollection'建立集合对象。

DimNumAsInteger'定义计数变量。

DimMsg

DimTheName'用来保存用户指定的名称的变量。

Do

DimInstAsNewClass1'建立Class1的新示例。

Num=Num+1'将计数变量加一,并让用户输入名称。

Msg="Pleaseenteranameforthisobject."&Chr(13)_

&"PressCanceltoseenamesincollection."

TheName=InputBox(Msg,"NametheCollectionItems")

Inst.InstanceName=TheName'将输入的名称存到对象的示例中。

'如果名称不是空字符串,则将该示例加到集合对象中。

IfInst.InstanceName<>""Then

'将该示例加到集合对象中。

MyClasses.Additem:

=Inst,key:

=CStr(Num)

EndIf

'清除对当前示例的引用,以准备下一个。

SetInst=Nothing

LoopUntilTheName=""

ForEachxInMyClasses

MsgBoxx.instancename,,"InstanceName"

Next

Add方法(Dictionary)

描述

添加一对相对应的关键字和条目到Dictionary对象。

语法

object.Addkey,item

Add方法的语法有如下几部分:

部分

描述

Object

必需的。

一个Dictionary对象的名字。

Key

必需的。

与所添加的条目相关联的关键字。

Item

必需的。

与所添加的关键字相关联的条目。

说明

如果该关键字已经存在,则产生一个错误。

1、应用于Dictionary对象

2、请参阅ADD方法(Folder)、Exist方法、Items方法、Keys方法、Remove方法、RemoveAll方法

Add方法(Folders)

描述

添加一个新的Folder到Folders集合。

语法

object.AddfolderName

Add方法的语法有如下几部分:

部分

描述

Object

必需的。

一个Folders集合的名称。

FolderName

必需的。

新添加的Folder的名称。

说明

如果folderName已经存在,则产生一个错误。

1、应用于Folders集合

2、请参阅Add方法(Dictionary)

Assert方法

有条件地在该方法出现的行上挂起执行。

语法

object.Assertbooleanexpression

Assert方法的语法有如下的对象限定符和参数:

部分

描述

object

必需的。

总是Debug对象。

booleanexpression

必需的。

一个值为True或者False的表达式。

说明

Assert调用只在开发环境中工作。

当模块被编译成为一个可执行的文件时,调用Debug对象的方法就会被忽略。

全部booleanexpression常常被计算。

例如,即使一个And表达式的第一部分被计算为False,整个表达式还要被计算。

1、应用于Debug对象

2、请参阅Print方法

Assert方法示例

下面的示例说明如何使用Assert方法。

示例需要一个带有两个按纽控件的窗体。

缺省的按纽名称是Command1和Command2。

当示例运行时,单击Command1按纽使得按纽上的文本在0和1之间进行切换。

单击Command2按纽可能不做任何事,也可能引起一个确认,应该执行哪一个操作取决于Command1按纽上所显示的值。

该确认将在最后一个语句执行之后使整个执行停止,并且Debug.Assert行被突出显式。

OptionExplicit

PrivateblnAssertAsBoolean

PrivateintNumberAsInteger

PrivateSubCommand1_Click()

blnAssert=NotblnAssert

intNumber=IIf(intNumber<>0,0,1)

Command1.Caption=intNumber

EndSub

PrivateSubCommand2_Click()

Debug.AssertblnAssert

EndSub

PrivateSubForm_Load()

Command1.Caption=intNumber

Command2.Caption="AssertTester"

EndSub

BuildPath方法

描述

追加一个名字到一个已经存在的路径。

语法

object.BuildPath(path,name)

BuildPath方法语法有如下几部分:

部分

描述

object

必需的。

始终是FileSystemObject的名字。

path

必需的。

要对其追加名字的已存在路径。

路径可以是绝对的也可以是相对的,不必指定一个已存在的文件夹。

name

必需的。

要追加到已存在路径上的名字。

说明

只有在需要时,BuildPath方法才在已存在路径和名字之间插入一个附加的路径分隔符。

1、应用于FileSystemObject对象。

Clear方法

清除Err对象的所有属性设置。

语法

object.Clear

objec总是Err对象。

说明

在处理错误之后使用Clear来清除Err对象,例如,在对OnErrorResumeNext使用拖延错误处理时就可使用Clear。

每当执行下列语句时就会自动调用Clear方法:

任意类型的Resume语句。

ExitSub,ExitFunction,ExitProperty

任何OnError语句。

注意当处理因访问其他对象产生的错误时,与其使用OnErrorGoTo,不如使用OnErrorResumeNext。

每一次与对象打交道之后都检查Err,则可消除代码访问对象时的含混之处。

可以确认是哪个对象将错误引入Err.Number中,也可以确认最初是哪个对象产生了这个错误(Err.Source中指定的对象)。

1、应用于Err对象

2、请参阅Description属性、Err对象、HelpContext属性、HelpFile属性、LastDLLError属性、Number属性、OnError语句、Raise方法、Source属性。

Clear方法示例

本示例使用Err对象的Clear方法将Err对象之数值属性重新设置为零,并将其字符串属性设置为零长度字符串。

如果在代码中省略Clear方法,则每完成一次循环便会显示一次错误信息(发生错误之后),不论程序中的计算结果是否真的有错误。

DimResult(10)AsInteger'声明数组变量

'其元素容易溢出

Dimindx

OnErrorResumeNext'将错误处理的方式改为“继续下一行”。

DoUntilindx=10

'下面计算若有错误发生,便显示错误信息。

Result(indx)=Rnd*indx*20000

IfErr.Number<>0Then

MsgBoxErr,,"ErrorGenerated:

",Err.HelpFile,Err.HelpContext

Err.Clear'清除Err对象的属性。

Else

indx=indx+1

EndIf

Loop

Close方法

描述

关闭一个打开的TextStream文件。

语法

object.Close

object始终是一个TextStream对象的名字。

1、应用于TextStream对象

2、请参阅Read方法、ReadAll方法、ReadLine方法、Skip方法、SkipLine方法、Write方法、WriteBlankLines方法、WriteLine方法。

Copy方法

描述

把一个指定的文件或文件夹从一个地方复制到另一个地方。

语法

object.Copydestination[,overwrite]

Copy方法语法有如下几部分:

部分

描述

object

必需的。

始终是一个File或Folder对象的名字。

destination

必需的。

文件或文件夹要复制到的接受端。

不允许有通配符。

overwrite

可选的。

Boolean值,如果该值为True(缺省),则已存在的文件或文件夹将被覆盖。

如果为False,则它们不被覆盖。

说明

对一个File或Folder,Copy方法的结果和执行FileSystemObject.CopyFile或FileSystemObject.CopyFolder操作的结果是一样的,在后者中,object所引用的文件或文件夹是作为参数传递的。

应当注意,后面的方法能够复制多个文件或文件夹。

1、应用于File对象、Folder对象

2、请参阅CopyFile方法、CopyFolder方法、Delete方法、Move方法、OpenAsTextStream方法

CopyFile方法

描述

把一个或多个文件从一个地方复制到另一个地方。

语法

object.CopyFilesource,destination[,overwrite]

CopyFile方法语法有如下几部分:

部分

描述

object

必需的。

object始终是一个FileSystemObject的名字。

source

必需的。

指明一个或多个要被复制文件的字符串文件说明,它可以包括通配符。

destination

必需的。

指明source中的一个或多个文件要被复制到的接受端的字符串,不允许有通配符。

overwrite

选项的。

Boolean值,它表示存在的文件是否被覆盖。

如果是True,文件将被覆盖;如果是False,它们不被覆盖。

缺省值是True。

注意如果destination具有只读属性设置,不论overwrite值如何,CopyFile都将失败。

说明

通配符只能用在source参数的最后一个路径部件。

例如,你可以在下面请况使用通配符:

FileSystemObject.CopyFile"c:

\mydocuments\letters\*.doc","c:

\tempfolder\"

但下面情况不能使用:

FileSystemObject.CopyFile"c:

\mydocuments\*\R1?

97.xls","c:

\tempfolder"

如果source包含通配符或destination以路径分隔符(\)为结尾,则认为destination是一个已存在文件夹,在其中复制相匹配的文件。

否则认为destination是一个要创建文件的名字。

不论是那种情况,当复制一个文件时,可能发生三种事件。

如果destination不存在,source得到复制。

这是通常的情况。

如果destination是一个已存在的文件,则当overwrite值为False时发生一个错误,否则,source的复制文件将试图覆盖已存在文件。

如果destination是一个目录,发生一个错误。

如果使用通配符的source不能和任何文件匹配,同样产生一个错误。

CopyFile方法停止在它遇到的第一个错误上。

不要试图回卷或撤消错误发生前所做的任何改变。

1、应用于FileSystemObject对象

2、请参阅Copy方法、CopyFolder方法、CreateFolder方法、DeleteFolder方法、MoveFolder方法

CopyFolder方法

描述

从一个地方递归地复制一个文件夹到另一个地方。

语法

object.CopyFoldersource,destination[,overwrite]

CopyFolder方法语法有如下几部分:

部分

描述

Object

必需的。

始终为一个FileSystemObject的名字。

source

必需的。

指明一个或多个被复制文件夹的字符串文件夹说明,可以包括通配符。

destination

必需的。

指明source中被复制文件夹和子文件夹的接受端的字符串,不允许有通配符。

overwrite

选项的。

Boolean值,它表示已存在的文件夹是否被覆盖。

如果为True,文件被覆盖。

如果为False,文件不被覆盖。

缺省值为True。

说明

通配符仅可用于source参数的最后一个路径部件。

例如你可以在下面情况使用它:

FileSystemObject.CopyFolder"c:

\mydocuments\letters\*","c:

\tempfolder\"

但不能在下面情况使用它:

FileSystemObject.CopyFolder"c:

\mydocuments\*\*","c:

\tempfolder\"

如果source包含通配符或destination以路径分隔符(\)为结尾,则认为destination是一个已存在的文件夹,在其中复制相匹配的文件夹和子文件夹。

否则认为destination是一个要创建的文件夹的名字。

不论何种情况,当复制一个文件夹时,可能发生四种事件。

如果destination不存在,source文件夹和它所有的内容得到复制。

这是通常的情况。

如果destination是一个已存在的文件,则发生一个错误。

如果destination是一个目录,它将尝试复制文件夹和它所有的内容。

如果一个包含在source的文件已在destination中存在,当overwrite为False时发生一个错误,否则它将尝试覆盖这个文件。

如果destination是一个只读目录,当尝试去复制一个已存在的只读文件到此目录并且overwrite为False时,则发生一个错误。

如果source使用的通配符不能和任何文件夹匹配,也发生一个错误。

CopyFolder方法停止在它遇到的第一个错误上。

不要尝试回卷错误发生前所做的任何改变。

1、应用于FileSystemObject对象

2、请参阅Copy方法、CopyFile方法、CreateFolder方法、DeleteFolder方法、MoveFolder方法

CreateFolder方法

描述

创建一个文件夹。

语法

object.CreateFolder(foldername)

CreateFolder方法有如下几部分:

部分

描述

object

必需的。

始终是一个FileSystemObject的名字。

foldername

必需的。

字符串表达式,它标识创建的文件夹。

说明

如果指定的文件夹已经存在,则发生一个错误。

1、应用于FileSystemObject对象

2、请参阅CopyFolder方法、CreateTextFile方法、DeleteFolder方法、MoveFolder方法。

CreateTextFile方法

描述

创建一个指定的文件名并且返回一个用于该文件读写的TextStream对象。

语法

object.CreateTextFile(filename[,overwrite[,unicode]])

CreateTextFile方法有如下几部分:

部分

描述

object

必需的。

始终是一个FileSystemObject或Folder对象的名字。

filename

必需的。

字符串表达式,它标识创建的文件。

overwrite

可选的。

Boolean值,表示一个已存在文件是否可被覆盖。

如果可被覆盖其值为True,其值为False时不能覆盖。

如果它被省略,则已存在文件不能覆盖。

unicode

可选的。

Boolean值,表示文件是作为一个Unicode文件创建的还是作为一个ASCII文件创建的。

如果作为一个Unicode文件创建,其值为True,作为一个ASCII文件创建,其值为False。

如果省略的话,则认为是一个ASCII文件。

说明

下面的代码举例说明如何使用CreateTextFile方法创建和打开文本文件。

SubCreateAfile

Setfs=CreateObject("Scripting.FileSystemObject")

Seta=fs.CreateTextFile("c:

\testfile.txt",True)

a.WriteLine("Thisisatest.")

a.Close

EndSub

对于一个已经存在的filename,如果overwrite参数是False或者没有提供,则发生一个错误。

1、应用于FileSystemObject对象、Folder对象

2、请参阅CopyFile方法、DeleteFile方法、OpenAsTextStream方法、OpenTextFile方法

Delete方法

描述

删除一个指定的文件或文件夹。

语法

object.Deleteforce

Delete方法语法有如下几部分:

部分

描述

object

必需的。

始终是一个File或Folder对象的名字。

force

可选的。

Boolean值,如果要删除具有只读属性设置的文件或文件夹,其值为True。

当其值为False时(缺省),不能删除具有只读属性设置的文件或文件夹

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

当前位置:首页 > 小学教育 > 语文

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

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