Add control at run time.

  • Thread starter Thread starter Russell W. Patterson
  • Start date Start date
R

Russell W. Patterson

Y'all:

I am trying to add a control at run time on my user form. Using Excel
2002. If you go into the visual basic help and search on
"control.add" the very first item in the returned list is "AddControl
Event". The example that is given for the AddControl Event won't run
for me. I pasted it below. WHat is wrong with it?

russ
(e-mail address removed)



Dim Mycmd as Control
Private Sub CommandButton1_Click()

Set Mycmd = Controls.Add("MSForms.CommandButton.1") ',
CommandButton2, Visible)
Mycmd.Left = 18
Mycmd.Top = 150
Mycmd.Width = 175
Mycmd.Height = 20
Mycmd.Caption = "This is fun." & Mycmd.Name

End Sub

Private Sub UserForm_AddControl(ByVal Control As _
MSForms.Control)
Label1.Caption = "Control was Added."
End Sub
 
Hi Russell,

Try using "Forms.CommandButton.1" instead of "MSForms.CommandButton.1".

--
Regards,

Jake Marx
www.longhead.com

[please keep replies in the newsgroup - email address unmonitored]
 
Russell W. Patterson said:
Y'all:

I am trying to add a control at run time on my user form. Using Excel
2002. If you go into the visual basic help and search on
"control.add" the very first item in the returned list is "AddControl
Event". The example that is given for the AddControl Event won't run
for me. I pasted it below. WHat is wrong with it?

russ
(e-mail address removed)



Dim Mycmd as Control
Private Sub CommandButton1_Click()

Change this
Set Mycmd = Controls.Add("MSForms.CommandButton.1") ',
CommandButton2, Visible)

to

Set Mycmd = Controls.Add("Forms.CommandButton.1") , _
CommandButton2, Visible)

and it'll work

Keith
 
Guys: Thanks. Changeing to "Forms..." made it work.

Now, how can I adjust to make it work with the ProgressBar control?

thanks,
russ
(e-mail address removed)
 
Hi Russell,

MSComctlLib.ProgCtrl.2

You can get these pretty easily - go to Excel, bring up the Control toolbox,
then select additional controls. Find the Microsoft Progressbar Control and
insert it on the worksheet. When you insert it, you'll see the ProgID in
the formula bar:

=EMBED("MSComctlLib.ProgCtrl.2","")

--
Regards,

Jake Marx
MS MVP - Excel
www.longhead.com

[please keep replies in the newsgroup - email address unmonitored]
 
Back
Top