CreateObject
创建并返回对COM/Automation对象新实例的引用。
语法:CreateObject( class [ , servername ] )
- class
- 必需 Variant(String)。要创建的对象的应用程序名称和类,格式为appname.objecttype——例如
"Excel.Application"。也可以CLSID形式提供,格式为"new:{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"。 - servername
- 可选 Variant(String)。要在其上创建对象的网络服务器名称——与UNC共享名的Machine Name部分相同。对于名为
\\MyServer\Public的共享,servername为"MyServer"。如果省略servername或提供为零长度字符串(""),则在本地机器上创建对象。
要使用返回的对象,请将其赋给对象变量。将变量声明为As Object会导致后期绑定(绑定在运行时发生);使用特定类类型声明会产生早期绑定(绑定在编译时发生),速度更快并且可以访问对象成员的IntelliSense,但将变量限制为该一种类型。
vb
Dim ExcelApp As Object
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True如果提供了远程servername但远程机器不存在或不可达,则会产生运行时错误。如果对象注册为单实例,则无论调用CreateObject多少次,都只会创建一个实例。
INFO
CreateObject获取对象的新实例。GetObject附加到已运行的实例——或启动对象的应用程序并加载特定文件。
示例
本示例创建Microsoft Excel Application对象,使其可见,然后通过Quit关闭它,最后释放引用。
vb
Dim XlApp As Object
Set XlApp = CreateObject("Excel.Application")
XlApp.Visible = True
' ... work with Excel through XlApp ...
XlApp.Quit
Set XlApp = Nothing