CreateObject函数创建对象方法,vba编程,源代码解释

函数通常可以实现一些功能,可以返回某些值或对象,赋值给变量达到过程管理的目的。本节介绍一个很有用的函数CreateObject,此函数十分强大,

函数通常可以实现一些功能,可以返回某些值或对象,赋值给变量达到过程管理的目的。

本节介绍一个很有用的函数CreateObject,此函数十分强大,简单理解就是创建对象的意思。

CreateObject函数创建对象方法,vba编程,源代码解释

什么是创建对象呢?

可以想象成新建了一个实物,如一间房子,一个虚拟人物等等。

同理,也可以创建一个软件应用。如Excel软件或Word软件文档。

也就是说,这个函数提供了一种可能,一种可以创造万物的可能,本来没有的东西,通过这个函数就可以创建出来了。似乎是上帝的工具,上帝说有人,就有了人,上帝说有天,就有了天。

那么问题来了,如何利用这个函数创建对象呢?

CreateObject函数创建对象方法,vba编程,源代码解释

如上图所示,CreateObject()函数语法结构

根据语法可以创建相应的对象类型,然后再根据对象的属性方法或事件来进行编程。这就是此函数的神奇之处。

这样有一个好处,就是本来没有的对象,我们创建了一个,然后进行了一些对象操作,再把这个对象抹除,什么都不留下,但是,我们会得到一个结果,一个想要的结果。

神奇之处犹如来过这个世界,走了之后,发现什么都不存在,感觉没有来过一样。

CreateObject函数创建对象方法,vba编程,源代码解释

具体看一下示例代码:

'使用CreateObject函数创建工作薄
Dim xApp As Excel.Application '定义Excel应用对象
Dim xBook As Excel.Workbook '定义工作薄对象
Dim xSheet As Excel.Worksheet '定义工作表对象
Set xApp = CreateObject("Excel.Application") '创建并引用Excel应用对象
Set xBook = xApp.Workbooks.Add '添加工作薄
Set xSheet = xBook.Worksheets(1) '引用工作表1
xSheet.Cells(1, 1).Value = "这是一个新工作表!"
xApp.Application.ScreenUpdating = False
xApp.Application.DisplayAlerts = False
xBook.SaveAs ThisWorkbook.Path & "\newBook.xlsx"
xApp.Visible = True
xBook.Close '关闭工作薄
xApp.Application.ScreenUpdating = True
xApp.Application.DisplayAlerts = True
xApp.Quit '退出Excel应用
Set xApp = Nothing
Set xBook = Nothing
Set xSheet = Nothing

上述代码执行之后,电脑中发生了一些变化,在当前工作目录中新建了一个newBook.xlsx工作薄,并且在第一个工作表中留下一段话”这是一个新工作表!”,之后悄无声息地关闭Excel应用。

有什么用处呢?

最大用处在于可以跨表操作,就是在A工作薄中操作B工作薄的内容,而且神不知鬼不觉。

这只是CreateObject()函数的其中一个使用方法,严格来说,它可创建很多不同的应用对象。

如下表所示:

CreateObject() 创建如下对象:

creatobject(“adodb.recordset”) 数据库记录操作

creatobject(“scripting.filesystemobject”) 文件操作

creatobject(“wscript.shell”) SHELL creatobject(“wscript.network”) 网络操作

createobject(“microsoft.xmlhttp”) XMLHTTP ,远程获取文件用的

createobject (“msxml2.xmlhttp.4.0”) 同上

createobject(“adodb.stream”) 数据流传输

createobject(“adodb.connection”) 数据库连接

createobject (“word. application “) WORD

createobject (“excel. application “) EXCEL

createobject (“mswc.adrotator”) 广告

createobject(“scripting.dictionary”) HASH表操作

createobject(“powerpoint.application”)

createobject(“Microsoft.XMLDOM”) XML操作

createobject(“WScript.Shell”)

createobject(“wscript.network”)

createobject(“MSWC.adRotator”)

createobject(“excel.sheet”)

createobject(“frontpage.application”)

createobject(“access.application”)

createobject(“msgraph.application”)

createobject(“photoshop.application”)

如果有点看不明白,那就对了,每个应用有其操作方法,但其CreateObject方法只有一种:

‘首先定义一个对象变量,ExcelApp,变量名可根据自己要求设置。

Dim ExcelApp As Object

‘其次使用CreateObject函数创建对象并引用

Set ExcelApp= CreateObject(“Excel.Application”)

具体可对照示例完整地理解。

欢迎关注、收藏

—END—

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/10089.html

(0)
上一篇 2023年 4月 22日 下午11:55
下一篇 2023年 4月 22日 下午11:55

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信