Name
controls
.Add(ProgID
[, Name
] [, Visible
])
Synopsis
Adds a control to the form or frame and returns a reference to that control.
Argument |
Settings |
---|---|
|
A string identifying the class name and version of the control to add. See Table 20-6 for a list of the values for common controls. |
|
The name to assign the control. |
|
True displays the control; False hides it. Default is True. |
Table 20-6. ProgIDs for Forms 2.0 controls
Control |
Class name and version (ProgID) |
---|---|
CheckBox |
Forms.CheckBox.1 |
ComboBox |
Forms.ComboBox.1 |
CommandButton |
Forms.CommandButton.1 |
Frame |
Forms.Frame.1 |
Image |
Forms.Image.1 |
Label |
Forms.Label.1 |
ListBox |
Forms.ListBox.1 |
MultiPage |
Forms.MultiPage.1 |
OptionButton |
Forms.OptionButton.1 |
ScrollBar |
Forms.ScrollBar.1 |
SpinButton |
Forms.SpinButton.1 |
TabStrip |
Forms.TabStrip.1 |
TextBox |
Forms.TextBox.1 |
ToggleButton |
Forms.ToggleButton.1 |
Tip
Even though the version number in the ProgID is 1, these names refer to the Forms 2.0 controls.
The following code creates label and text box controls for each of the columns in a list created in the data form example created earlier:
Private Sub UserForm_Initialize( ) Dim ws As Worksheet, lc As ListColumn, _ c As Control, tp As Single, lft As Single, wd As Single, _ ht As Single Set ws = Worksheets("DataForm") ' Control's initial height and width values. wd = 60 ht = 18 ' Add a label and a text box for each list column. For Each lc In ws.ListObjects(1).ListColumns ' Add a label. Set c = Frame1.Controls.Add("Forms.Label.1", ...
Get Programming Excel with VBA and .NET 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.