Properties (Visual Basic Add-In Model)
ActiveCodePane
Returns the active or last active CodePane object, or sets the active CodePane object. Read/write.
Remarks
You can set the ActiveCodePane property to any valid CodePane object, as shown in the following example:
Set MyApp.VBE. ActiveCodePane = MyApp.VBE.CodePanes(1)
The preceding example sets the first code pane in a collection of code panes to be the active code pane. You can also activate a code pane by using the SetSelection method.
ActiveVBProject
Returns the active project in the Project window. Read-only.
Remarks
The ActiveVBProject property returns the project that is selected in the Project window or the project in which the components are selected. In the latter case, the project itself isn't necessarily selected. Whether or not the project is explicitly selected, there is always an active project.
ActiveWindow
Returns the active window in the development environment. Read-only.
Remarks
When more than one window is open in the development environment, the ActiveWindow property setting is the window with the focus. If the main window has the focus, ActiveWindow returns Nothing.
AddIns
Returns a collection which add-ins can use to register their automation components into the extensibility object model.
Syntax
object.AddIns
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
BuildFileName
Sets or returns the DLL name that will be used when the project is built.
Syntax
object.BuildFileName
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
BuiltIn
Returns a Boolean value indicating whether the Reference object is a default reference that can't be removed. Read-only.
The BuiltIn property returns these values:
Value | Description |
---|---|
True | The reference is a default reference that can't be removed. |
False | The reference isn't a default reference; it can be removed. |
Caption
Returns a String containing the title of the active Window. Read-only.
Remarks
The title of the active window is the text displayed in the window's title bar.
CodeModule
Returns an object representing the code behind the component. Read-only.
Remarks
The CodeModule property returns Nothing if the component doesn't have a code module associated with it.
Note
The CodePane object represents a visible code window. A given component can have several CodePane objects.
The CodeModule object represents the code within a component. A component can only have one CodeModule object.
CodePane
Returns a CodePane object. Read-only.
Remarks
If a code pane exists, it becomes the active code pane, and the window that contains it becomes the active window. If a code pane doesn't exist for the module, the CodePane property creates one.
CodePanes
Returns the collection of active CodePane objects. Read-only.
CodePaneView
Returns a value indicating whether the CodePane is in Procedure view or Full Module view. Read-only.
The CodePaneView property returns these values:
Constant | Description |
---|---|
vbext_cv_ProcedureView | The specified code pane is in Procedure view. |
vbext_cv_FullModuleView | The specified project is in Full Module view. |
Collection
Returns the collection that contains the object you are working with. Read-only.
Remarks
Most objects in this object model have either a Parent property or a Collection property that points to the object's parent object.
Use the Collection property to access the properties, methods, and controls of the collection to which the object belongs.
CommandBarEvents
Returns the CommandBarEvents object. Read-only.
Settings
The setting for the argument you pass to the CommandBarEvents property is:
Argument | Description |
---|---|
vbcontrol | Must be an object of type CommandBarControl. |
Remarks
Use the CommandBarEvents property to return an event source object that triggers an event when a command bar button is clicked.
The argument passed to the CommandBarEvents property is the command bar control for which the Click event will be triggered.
CommandBars
Contains all of the command bars in a project, including command bars that support shortcut menus.
See also Menus and commands and Toolbars.
Connect
Returns or sets the connected state of an add-in.
Remarks
Returns True if the add-in is registered and currently connected (active).
Returns False if the add-in is registered, but not connected (inactive).
Count
Returns a Long containing the number of items in a collection. Read-only.
CountOfDeclarationLines
Returns a Long containing the number of lines of code in the Declarations section of a code module. Read-only.
CountOfLines
Returns a Long containing the number of lines of code in a code module. Read-only.
CountOfVisibleLines
Returns a Long containing the number of lines visible in a code pane. Read-only.
Description
Returns or sets a string expression containing a descriptive string associated with an object. For the VBProject object, read/write; for the Reference object, read-only.
Remarks
For the VBProject object, the Description property returns or sets a descriptive string associated with the active project.
For the Reference object, the Description property returns the descriptive name of the reference.
Designer
Returns the object that enables you to access the design characteristics of a component.
Remarks
If the object has an open designer, the Designer property returns the open designer; otherwise, a new designer is created.
The designer is a characteristic of certain VBComponent objects. For example, when you create certain types of VBComponent objects, a designer is created along with the object. A component can have only one designer, and it's always the same designer.
The Designer property enables you to access a component-specific object. In some cases, such as in standard modules and class modules, a designer isn't created because that type of VBComponent object doesn't support a designer.
The Designer property returns Nothing if the VBComponent object doesn't have a designer.
DesignerID
Read-only property that returns the ProgID of an ActiveX designer.
Events
Supplies properties that enable add-ins to connect to all events in Visual Basic for Applications.
Syntax
object.Events
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
FileName
Returns the full path name of the project file or host document.
Syntax
object.Filename
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Remarks
Projects have no name other than the file name. The path name returned is always provided as an absolute path (for example, "c:\projects\myproject.vba"), even if it is shown as a relative path (such as "..\projects\myproject.vba").
FullPath
Returns a String containing the path and file name of the referenced type library. Read-only.
GUID
Returns a String containing the class identifier of an object. Read-only.
HasOpenDesigner
Returns a Boolean value indicating whether the VBComponent object has an open designer. Read-only.
The HasOpenDesigner property returns these values:
Value | Description |
---|---|
True | The VBComponent object has an open Design window. |
False | The VBComponent object doesn't have an open Design window. |
Height
Returns or sets a Single containing the height of the window in twips. Read/write.
Remarks
Changing the Height property setting of a linked window or docked window has no effect as long as the window remains linked or docked.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
HelpContextID
Returns or sets a String containing the context ID for a topic in a Microsoft Windows Help file. Read/write.
HelpFile
Returns or sets a String specifying the Microsoft Windows Help file for a project. Read/write.
IndexedValue
Returns or sets a value for a member of a property that is an indexed list or an array.
Remarks
The value returned or set by the IndexedValue property is an expression that evaluates to a type that is accepted by the object. For a property that is an indexed list or array, you must use the IndexedValue property instead of the Value property. An indexed list is a numeric expression specifying index position. Values in indexed lists are set or returned with a single index.
IndexedValue accepts up to 4 indices. The number of indices accepted by IndexedValue is the value returned by the NumIndices property. The IndexedValue property is used only if the value of the NumIndices property is greater than zero.
IsBroken
Returns a Boolean value indicating whether the Reference object points to a valid reference in the registry. Read-only.
The IsBroken property returns these values:
Value | Description |
---|---|
True | The Reference object no longer points to a valid reference in the registry. |
False | The Reference object points to a valid reference in the registry. |
Left
Returns or sets a Single containing the location of the left edge of the window on the screen in twips. Read/write.
Remarks
The value returned by the Left property depends on whether the window is linked or docked.
Note
Changing the Left property setting of a linked or docked window has no effect as long as the window remains linked or docked.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
Lines
Returns a string containing the specified number of lines of code.
Syntax
object.Lines (startline, count) As String
The Lines syntax has these parts:
Part | Description |
---|---|
object | Required. An object expression that evaluates to an object in the Applies To list. |
startline | Required. A Long specifying the line number in which to start. |
count | Required. A Long specifying the number of lines you want to return. |
Remarks
The line numbers in a code module begin at 1.
LinkedWindowFrame
Returns the Window object representing the frame that contains the window. Read-only.
Remarks
The LinkedWindowFrame property enables you to access the object representing the linked window frame, which has properties distinct from the window or windows it contains. If the window isn't linked, the LinkedWindowFrame property returns Nothing.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
LinkedWindows
Returns the collection of all linked windows contained in a linked window frame. Read-only.
Remarks
The LinkedWindows property is an accessor property (that is, a property that returns an object of the same type as the property name).
MainWindow
Returns a Window object representing the main window of the Visual Basic development environment. Read-only.
Remarks
Use the Window object returned by the MainWindow property to add or remove docked windows, and to maximize, minimize, hide, or restore the main window of the Visual Basic development environment.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
Major
Returns a Long containing the major version number of the referenced type library. Read-only.
Remarks
The number returned by the Major property corresponds to the major version number stored in the type library to which you have set the reference.
Minor
Returns a Long indicating the minor version number of the referenced type library. Read-only.
Remarks
The number returned by the Minor property corresponds to the minor version number stored in the type library to which you have set the reference.
Mode
Returns a value containing the mode of the specified project. Read-only.
The Mode property returns these values:
Constant | Description |
---|---|
vbext_vm_Run | The specified project is in run mode. |
vbext_vm_Break | The specified project is in break mode. |
vbext_vm_Design | The specified project is in design mode. |
Name
Returns or sets a String containing the name used in code to identify an object. For the VBProject object and the VBComponent object, read/write. For the Property object and the Reference object, read-only.
Remarks
The following table describes how the Name property setting applies to different objects.
Object | Result of using Name property setting |
---|---|
VBProject | Returns or sets the name of the active project. |
VBComponent | Returns or sets the name of the component. An error occurs if you try to set the Name property to a name already being used or an invalid name. |
Property | Returns the name of the property as it appears in the Property Browser. This is the value used to index the Properties collection. The name can't be set. |
Reference | Returns the name of the reference in code. The name can't be set. |
The default name for new objects is the type of object plus a unique integer. For example, the first new Form object is Form1, a new Form object is Form1, and the third TextBox control that you create on a form is TextBox3.
An object's Name property must start with a letter and can be a maximum of 40 characters. It can include numbers and underline (_) characters, but can't include punctuation or spaces.
Forms and modules can't have the same name as another public object such as Clipboard, Screen, or App. Although the Name property setting can be a keyword, property name, or the name of another object, this can create conflicts in your code.
NumIndices
Returns the number of indices on the property returned by the Property object.
Remarks
The value of the NumIndices property can be an integer from 0–4. For most properties, NumIndices returns 0. Conventionally indexed properties return 1. Property arrays might return 2.
Object
Returns or sets the value of an object returned by a property. Read/write.
Remarks
If a Property object returns an object, you must use the Object property to return or set the value of that object.
Parent
Returns the object or collection that contains another object or collection. Read-only.
Remarks
Most objects have either a Parent property or a Collection property that points to the object's parent object in this object model. The Collection property is used if the parent object is a collection.
Use the Parent property to access the properties, methods, and controls of an object's parent object.
See also CodeModule object
ProcBodyLine
Returns the first line of a procedure.
Syntax
object.ProcBodyLine (procname, prockind) As Long
The ProcBodyLine syntax has these parts:
Part | Description |
---|---|
object | Required. An object expression that evaluates to an object in the Applies To list. |
procname | Required. A String containing the name of the procedure. |
prockind | Required. Specifies the kind of procedure to locate. Because property procedures can have multiple representations in the module, you must specify the kind of procedure you want to locate. All procedures other than property procedures (that is, Sub and Function procedures) use vbext_pk_Proc. |
Use one of the following constants for the prockind argument.
Constant | Description |
---|---|
vbext_pk_Get | Specifies a procedure that returns the value of a property. |
vbext_pk_Let | Specifies a procedure that assigns a value to a property. |
vbext_pk_Set | Specifies a procedure that sets a reference to an object. |
vbext_pk_Proc | Specifies all procedures other than property procedures. |
Remarks
The first line of a procedure is the line on which the Sub, Function, or Property statement appears.
ProcCountLines
Returns the number of lines in the specified procedure.
Syntax
object.ProcCountLines (procname, prockind) As Long
The ProcCountLines syntax has these parts:
Part | Description |
---|---|
object | Required. An object expression that evaluates to an object in the Applies To list. |
procname | Required. A String containing the name of the procedure. |
prockind | Required. Specifies the kind of procedure to locate. Because property procedures can have multiple representations in the module, you must specify the kind of procedure you want to locate. All procedures other than property procedures (that is, Sub and Function procedures) use vbext_pk_Proc. |
Use one of the following constants for the prockind argument.
Constant | Description |
---|---|
vbext_pk_Get | Specifies a procedure that returns the value of a property. |
vbext_pk_Let | Specifies a procedure that assigns a value to a property. |
vbext_pk_Set | Specifies a procedure that sets a reference to an object. |
vbext_pk_Proc | Specifies all procedures other than property procedures. |
Remarks
The ProcCountLines property returns the count of all blank or comment lines preceding the procedure declaration and, if the procedure is the last procedure in a code module, any blank lines following the procedure.
ProcOfLine
Returns the name of the procedure that the specified line is in.
Syntax
object.ProcOfLine (line, prockind) As String
The ProcOfLine syntax has these parts:
Part | Description |
---|---|
object | Required. An object expression that evaluates to an object in the Applies To list. |
line | Required. A Long specifying the line to check. |
prockind | Required. Specifies the kind of procedure to locate. Because property procedures can have multiple representations in the module, you must specify the kind of procedure you want to locate. All procedures other than property procedures (that is, Sub and Function procedures) use vbext_pk_Proc. |
Use one of the following constants for the prockind argument.
Constant | Description |
---|---|
vbext_pk_Get | Specifies a procedure that returns the value of a property. |
vbext_pk_Let | Specifies a procedure that assigns a value to a property. |
vbext_pk_Set | Specifies a procedure that sets a reference to an object. |
vbext_pk_Proc | Specifies all procedures other than property procedures. |
Remarks
A line is within a procedure if it's a blank line or comment line preceding the procedure declaration and, if the procedure is the last procedure in a code module, a blank line or lines following the procedure.
ProcStartLine
Returns the line at which the specified procedure begins.
Syntax
object.ProcStartLine (procname, prockind) As Long
The ProcStartLine syntax has these parts:
Part | Description |
---|---|
object | Required. An object expression that evaluates to an object in the Applies To list. |
procname | Required. A String containing the name of the procedure. |
prockind | Required. Specifies the kind of procedure to locate. Because property procedures can have multiple representations in the module, you must specify the kind of procedure you want to locate. All procedures other than property procedures (that is, Sub and Function procedures) use vbext_pk_Proc. |
Use one of the following constants for the prockind argument.
Constant | Description |
---|---|
vbext_pk_Get | Specifies a procedure that returns the value of a property. |
vbext_pk_Let | Specifies a procedure that assigns a value to a property. |
vbext_pk_Set | Specifies a procedure that sets a reference to an object. |
vbext_pk_Proc | Specifies all procedures other than property procedures. |
Remarks
A procedure starts at the first line below the End Sub statement of the preceding procedure. If the procedure is the first procedure, it starts at the end of the general Declarations section.
ProgID
Returns the ProgID (programmatic ID) for the control represented by the VBControl object.
Syntax
object.ProgID
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Properties
Returns the properties of an object. Read-only.
Remarks
The Properties property is an accessor property (that is, a property that returns an object of the same type as the property name).
Protection
Returns a value indicating the state of protection of a project. Read-only.
The Protection property returns these values:
Constant | Description |
---|---|
vbext_pp_locked | The specified project is locked. |
vbext_pp_none | The specified project isn't protected. |
References
Returns the set of references in a project. Read-only.
Remarks
The References property is an accessor property (that is, a property that returns an object of the same type as the property name).
ReferencesEvents
Returns the ReferencesEvents object. Read-only.
Settings
The setting for the argument you pass to the ReferencesEvents property is:
Argument | Description |
---|---|
vbproject | If vbproject points to Nothing, the object that is returned will supply events for the References collections of all VBProject objects in the VBProjects collection. If vbproject points to a valid VBProject object, the object that is returned will supply events for only the References collection for that project. |
Remarks
The ReferencesEvents property takes an argument and returns an event source object. The ReferencesEvents object is the source for events that are triggered when references are added or removed.
Saved
Returns a Boolean value indicating whether the object was edited since the last time it was saved. Read/write.
The Saved property returns these values:
Value | Description |
---|---|
True | The object has not been edited since the last time it was saved. |
False | The object has been edited since the last time it was saved. |
Remarks
The SaveAs method sets the Saved property to True.
Note
If you set the Saved property to False in code, it returns False, and the object is marked as if it were edited since the last time it was saved.
SelectedVBComponent
Returns the selected component. Read-only.
Remarks
The SelectedVBComponent property returns the selected component in the Project window. If the selected item in the Project window isn't a component, SelectedVBComponent returns Nothing.
See also the VBE object.
Top
Returns or sets a Single specifying the location of the top of the window on the screen in twips. Read/write.
Remarks
The value returned by the Top property depends on whether the window is docked, linked, or in docking view.
Note
Changing the Top property setting of a linked or docked window has no effect as long as the window remains linked or docked.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
TopLine
Returns a Long specifying the line number of the line at the top of the code pane, or sets the line showing at the top of the code pane. Read/write.
Remarks
Use the TopLine property to return or set the line showing at the top of the code pane. For example, if you want line 25 to be the first line showing in a code pane, set the TopLine property to 25.
The TopLine property setting must be a positive number. If the TopLine property setting is greater than the actual number of lines in the code pane, the setting will be the last line in the code pane.
Type
Returns a numeric or string value containing the type of object. Read-only.
The Type property settings for the Window object are described in the following table.
Constant | Value | Description |
---|---|---|
vbext_wt_CodeWindow | 0 | Code window |
vbext_wt_Designer | 1 | Designer |
vbext_wt_Browser | 2 | Object Browser |
vbext_wt_Immediate | 5 | Immediate window |
vbext_wt_ProjectWindow | 6 | Project window |
vbext_wt_PropertyWindow | 7 | Properties window |
vbext_wt_Find | 8 | Find dialog box |
vbext_wt_FindReplace | 9 | Search and Replace dialog box |
vbext_wt_LinkedWindowFrame | 11 | Linked window frame |
vbext_wt_MainWindow | 12 | Main window |
vbext_wt_Watch | 3 | Watch window |
vbext_wt_Locals | 4 | Locals window |
vbext_wt_Toolbox | 10 | Toolbox |
vbext_wt_ToolWindow | 15 | Tool window |
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
The Type property settings for the VBComponent object are described in the following table.
Constant | Value | Description |
---|---|---|
vbext_ct_StdModule | 1 | Standard module |
vbext_ct_ClassModule | 2 | Class module |
vbext_ct_MSForm | 3 | Microsoft Form |
vbext_ct_ActiveXDesigner | 11 | ActiveX Designer |
vbext_ct_Document | 100 | Document Module |
The Type property settings for the Reference object are described in the following table.
Constant | Value | Description |
---|---|---|
vbext_rk_TypeLib | 0 | Type library |
vbext_rk_Project | 1 | Project |
The Type property settings for the VBProject object are described in the following table.
Constant | Value | Description |
---|---|---|
vbext_pt_HostProject | 100 | Host Project |
vbext_pt_StandAlone | 101 | Standalone Project |
Value
Returns or sets a Variant specifying the value of the property. Read/write.
Remarks
Because the Value property returns a Variant, you can access any property. To access a list, use the IndexedValue property.
If the property that the Property object represents is read/write, the Value property is read/write. If the property is read-only, attempting to set the Value property causes an error. If the property is write-only, attempting to return the Value property causes an error.
The Value property is the default property for the Property object.
VBComponents
Returns a collection of the components contained in a project.
Remarks
Use the VBComponents collection to access, add, or remove components in a project. A component can be a form, module, or class. The VBComponents collection is a standard collection that can be used in a For… Each block.
Use the Parent property to return the project that the VBComponents collection is in.
In Visual Basic for Applications, you can use the Import method to add a component to a project from a file.
For more information, see VBComponent object and SelectedVBComponent property.
VBE
Returns the root of the VBE object. Read-only.
Remarks
All objects have a VBE property that points to the root of the VBE object.
VBProjects
Returns the VBProjects collection, which represents all of the projects currently open in the Visual Basic IDE.
Syntax
object.VBProjects
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Version
Returns a String containing the version of Visual Basic for Applications that the application is using. Read-only.
Remarks
The Version property value is a string beginning with one or two digits, a period, and two digits; the rest of the string is undefined and may contain text or numbers.
Visible
For the Window object, returns or sets a Boolean value that specifies the visibility of a window. Read/write.
For the CodePane object, returns a Boolean value that indicates whether the code pane is visible in the window. Read-only.
The Visible property returns these values:
Value | Description |
---|---|
True | (Default) Object is visible. |
False | Object is hidden. |
Width
Returns or sets a Single containing the width of the window in twips. Read/write.
Remarks
Changing the Width property setting of a linked window or docked window has no effect as long as the window remains linked or docked.
Important
Objects, properties, and methods for controlling linked windows, linked window frames, and docked windows are included on the Macintosh for compatibility with code written in Windows. However, these language elements will generate run-time errors when run on the Macintosh.
Window
Returns the window in which the code pane is displayed. Read-only.
Windows
Returns the Window object, which represents a window in the Visual Basic IDE.
Syntax
object.Window
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
WindowState
Returns or sets a numeric value specifying the visual state of the Window. Read/write.
Settings
The WindowState property returns or sets the following values:
Constant | Value | Description |
---|---|---|
vbext_ws_Normal | 0 | (Default) Normal |
vbext_ws_Minimize | 1 | Minimized (minimized to an icon) |
vbext_ws_Maximize | 2 | Maximized (enlarged to maximum size) |
See also
- Properties (Microsoft Forms)
- Objects, methods, and properties (Visual Basic for Applications)
- Visual Basic Add-in Model reference
- Visual Basic language reference
- Office client development reference
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.