Copying labels to Userform at runtime.

  • Thread starter Thread starter Henry
  • Start date Start date
H

Henry

I'm trying to set up an array of labels on a form at runtime.
The size of the array is determined from a textbox input at the top of the
form.
The sort of thing I want is like a blank crossword grid, where I can adjust
the caption in each label later to be 1 letter.
I've tried to copy a label and then paste it, but VBA doesn't allow this.
Has anyone any suggestions on how to achieve this?

TIA
Henry
 
Try something like the following. Change the various properties
to meet your needs.

Dim Ctrl As MSForms.Control
Set Ctrl = UserForm1.Controls.Add("Forms.Label.1", "Label1",
True)
Ctrl.Height = 10
Ctrl.Width = 10
Ctrl.Top = 10
Ctrl.Left = 10
Ctrl.Caption = "A"
UserForm1.Show


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
 
Thanks Chip,

The Label takes on the default colours of the form.
All I need now is to change the backcolor, forecolor and border for it to be
as I want.
(White, Black and a black border)
I cannot seem to change them from VBA like a normal Label.

Henry
 
Use the ForeColor and BackColor properties of the Ctrl object.

Ctrl.ForeColor = RGB(0, 0, 0)
Ctrl.BackColor = RGB(255, 255, 255)


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
 
I'm not sure I understand your problem... but you can try to fill in the
textbox_change() event with some code to do the rest...
 
Thanks Chip,

Now working fine.

Henry


Chip Pearson said:
Use the ForeColor and BackColor properties of the Ctrl object.

Ctrl.ForeColor = RGB(0, 0, 0)
Ctrl.BackColor = RGB(255, 255, 255)


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top