Set Statement |
Named Arguments
No
Syntax
Set objectvar = {[New] objectexpression | Nothing}
objectvar
Use: Required
Data Type: Object
The name of the object variable or property.
New
Use: Optional
Type: Keyword
Creates a new instance of the object.
objectexpression
Use: Required
Data Type: Object
An expression evaluating to an object.
Nothing
Use: Optional
Type: Keyword
Assigns the special data type Nothing to objectvar, thereby releasing the reference to the object.
Description
Assigns an object reference to a variable or property.
When using Dim, Private, Public, ReDim, or Static to declare an object variable, the variable is assigned a value of Nothing unless the New keyword is used in the statement. The Set statement is then required to assign a reference to an instance of the object referred to in the declarative statement.
Rules at a Glance
Before the Set statement is used, objectvar must have been declared either as a generic object data type or (preferably) using the same object type as objectexpression. For example:
Dim objVar As Object Dim objExcel As Excel.Application Set objVar = Word.Application Set objExcel = Excel.Application
objectvar doesn't hold a copy of the underlying object; it simply holds a reference to the object.
If the New keyword is used, a new instance of the class is immediately created. This fires that class's Initialize event.
The New keyword can't be used with intrinsic data types or dependent objects; in other words, objects and classes must be ...
Get VB & VBA in a Nutshell: The Language now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.