View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Andy Pope Andy Pope is offline
external usenet poster
 
Posts: 2,489
Default programatically inserting a control within a frame

Hi,

You need to add the controls to the frame rather than the userform.

Dim MyControl As MSForms.Frame
Dim MyLabel As MSForms.Label

Set MyControl = Controls.Add("Forms.Frame.1")
With MyControl
.Width = 200
.Height = 400
.Top = 160
.Left = 2
.ZOrder (1)
.Visible = True
End With

Set MyLabel = MyControl.Controls.Add("Forms.Label.1")
With MyLabel
.Width = 100
.Height = 40
.Top = 10
.Left = 2
.Caption = "Hello World"
.Visible = True
End With

Cheers
Andy
--

Andy Pope, Microsoft MVP - Excel
http://www.andypope.info
"Wes" wrote in message
...
I'm creating a section of a userform on the fly. I can create a frame
using
the code:

Set MyControl = Controls.Add("Forms.Frame.1")
With MyControl
.width = 200
.height = 400
.top = 160
.left = 2
.zorder (1)
end with

now I want to create a textbox and a label within this frame (actually a
bunch of them). Anytime a create the textboxes or labels, it goes behind
the
frame. I used zorder(0) on the textbox. I also switched the zorder of
the
frame and textbox. (Not sure if this would have had anything to do with it
anyhow.)

Thanks in advance for your help