ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Multiple TextBoxes_Populate (https://www.excelbanter.com/excel-programming/294249-multiple-textboxes_populate.html)

don

Multiple TextBoxes_Populate
 
I Have a UserForm with many identical TextBoxes. I need to
populate them with varying types of format (ie backcolor,
forecolor, fontcolor etc) How can I do so, perhaps with
a "For Each" loop, rather than writing a separate code
block for each one.
I have tried things like:-
"For each TextBox in UserForm1"...... and
"For Count = 8 to 49 step 1
TextBox(Count).BackColor = something"
but either get "method not supported" or my syntax is
wrong.
Can anyone suggest code which will do this and if so,
where would it go - ie in a separate module, or in the
code for the TextBox and if the latter would the
Subroutine be a "Sub Initialise_???"
Any ideas would be greatly appreciated.
Don

Bob Phillips[_6_]

Multiple TextBoxes_Populate
 
Hi Don,

here is how you can access all the textboxes

Dim ctl As Control
For Each ctl In Me.Controls
If TypeName(ctl) = "TextBox" Then
ctl.BackColor = RGB(&H80, &H80, &H80)
End If
Next ctl

as to where to put it, that is more difficult. You need to determine which
event will change the textbox properties and then ad the code at that point.
There is no 'best' place.

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"Don" wrote in message
...
I Have a UserForm with many identical TextBoxes. I need to
populate them with varying types of format (ie backcolor,
forecolor, fontcolor etc) How can I do so, perhaps with
a "For Each" loop, rather than writing a separate code
block for each one.
I have tried things like:-
"For each TextBox in UserForm1"...... and
"For Count = 8 to 49 step 1
TextBox(Count).BackColor = something"
but either get "method not supported" or my syntax is
wrong.
Can anyone suggest code which will do this and if so,
where would it go - ie in a separate module, or in the
code for the TextBox and if the latter would the
Subroutine be a "Sub Initialise_???"
Any ideas would be greatly appreciated.
Don




Rob van Gelder[_4_]

Multiple TextBoxes_Populate
 
If the colours are not likely to change again, UserForm_Initialize() is an
OK place to put it.

--
Rob van Gelder - http://www.vangelder.co.nz/excel


"Bob Phillips" wrote in message
...
Hi Don,

here is how you can access all the textboxes

Dim ctl As Control
For Each ctl In Me.Controls
If TypeName(ctl) = "TextBox" Then
ctl.BackColor = RGB(&H80, &H80, &H80)
End If
Next ctl

as to where to put it, that is more difficult. You need to determine which
event will change the textbox properties and then ad the code at that

point.
There is no 'best' place.

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"Don" wrote in message
...
I Have a UserForm with many identical TextBoxes. I need to
populate them with varying types of format (ie backcolor,
forecolor, fontcolor etc) How can I do so, perhaps with
a "For Each" loop, rather than writing a separate code
block for each one.
I have tried things like:-
"For each TextBox in UserForm1"...... and
"For Count = 8 to 49 step 1
TextBox(Count).BackColor = something"
but either get "method not supported" or my syntax is
wrong.
Can anyone suggest code which will do this and if so,
where would it go - ie in a separate module, or in the
code for the TextBox and if the latter would the
Subroutine be a "Sub Initialise_???"
Any ideas would be greatly appreciated.
Don







All times are GMT +1. The time now is 02:13 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com