Properties (Visual Basic Add-In Model)
Returns the active or last active CodePane object, or sets the active CodePane object. Read/write.
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.
Returns the active project in the Project window. Read-only.
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.
Returns the active window in the development environment. Read-only.
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.
Returns a collection which add-ins can use to register their automation components into the extensibility object model.
object.AddIns
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Sets or returns the DLL name that will be used when the project is built.
object.BuildFileName
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
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. |
Returns a String containing the title of the active Window. Read-only.
The title of the active window is the text displayed in the window's title bar.
Returns an object representing the code behind the component. Read-only.
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.
Returns a CodePane object. Read-only.
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.
Returns the collection of active CodePane objects. Read-only.
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. |
Returns the collection that contains the object you are working with. Read-only.
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.
Returns the CommandBarEvents object. Read-only.
The setting for the argument you pass to the CommandBarEvents property is:
Argument | Description |
---|---|
vbcontrol | Must be an object of type CommandBarControl. |
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.
Contains all of the command bars in a project, including command bars that support shortcut menus.
See also Menus and commands and Toolbars.
Returns or sets the connected state of an add-in.
Returns True if the add-in is registered and currently connected (active).
Returns False if the add-in is registered, but not connected (inactive).
Returns a Long containing the number of items in a collection. Read-only.
Returns a Long containing the number of lines of code in the Declarations section of a code module. Read-only.
Returns a Long containing the number of lines of code in a code module. Read-only.
Returns a Long containing the number of lines visible in a code pane. Read-only.
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.
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.
Returns the object that enables you to access the design characteristics of a component.
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.
Read-only property that returns the ProgID of an ActiveX designer.
Supplies properties that enable add-ins to connect to all events in Visual Basic for Applications.
object.Events
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Returns the full path name of the project file or host document.
object.Filename
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
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").
Returns a String containing the path and file name of the referenced type library. Read-only.
Returns a String containing the class identifier of an object. Read-only.
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. |
Returns or sets a Single containing the height of the window in twips. Read/write.
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.
Returns or sets a String containing the context ID for a topic in a Microsoft Windows Help file. Read/write.
Returns or sets a String specifying the Microsoft Windows Help file for a project. Read/write.
Returns or sets a value for a member of a property that is an indexed list or an array.
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.
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. |
Returns or sets a Single containing the location of the left edge of the window on the screen in twips. Read/write.
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.
Returns a string containing the specified number of lines of code.
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. |
The line numbers in a code module begin at 1.
Returns the Window object representing the frame that contains the window. Read-only.
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.
Returns the collection of all linked windows contained in a linked window frame. Read-only.
The LinkedWindows property is an accessor property (that is, a property that returns an object of the same type as the property name).
Returns a Window object representing the main window of the Visual Basic development environment. Read-only.
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.
Returns a Long containing the major version number of the referenced type library. Read-only.
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.
Returns a Long indicating the minor version number of the referenced type library. Read-only.
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.
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. |
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.
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.
Returns the number of indices on the property returned by the Property object.
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.
Returns or sets the value of an object returned by a property. Read/write.
If a Property object returns an object, you must use the Object property to return or set the value of that object.
Returns the object or collection that contains another object or collection. Read-only.
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
Returns the first line of a procedure.
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. |
The first line of a procedure is the line on which the Sub, Function, or Property statement appears.
Returns the number of lines in the specified procedure.
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. |
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.
Returns the name of the procedure that the specified line is in.
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. |
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.
Returns the line at which the specified procedure begins.
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. |
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.
Returns the ProgID (programmatic ID) for the control represented by the VBControl object.
object.ProgID
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Returns the properties of an object. Read-only.
The Properties property is an accessor property (that is, a property that returns an object of the same type as the property name).
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. |
Returns the set of references in a project. Read-only.
The References property is an accessor property (that is, a property that returns an object of the same type as the property name).
Returns the ReferencesEvents object. Read-only.
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. |
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.
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. |
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.
Returns the selected component. Read-only.
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.
Returns or sets a Single specifying the location of the top of the window on the screen in twips. Read/write.
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.
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.
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.
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 |
Returns or sets a Variant specifying the value of the property. Read/write.
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.
Returns a collection of the components contained in a project.
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.
Returns the root of the VBE object. Read-only.
All objects have a VBE property that points to the root of the VBE object.
Returns the VBProjects collection, which represents all of the projects currently open in the Visual Basic IDE.
object.VBProjects
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Returns a String containing the version of Visual Basic for Applications that the application is using. Read-only.
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.
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. |
Returns or sets a Single containing the width of the window in twips. Read/write.
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.
Returns the window in which the code pane is displayed. Read-only.
Returns the Window object, which represents a window in the Visual Basic IDE.
object.Window
The object placeholder represents an object expression that evaluates to an object in the Applies To list.
Returns or sets a numeric value specifying the visual state of the Window. Read/write.
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) |
- 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
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.