ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Commandbutton captions (https://www.excelbanter.com/excel-programming/412358-commandbutton-captions.html)

al

Commandbutton captions
 
I have a Userform that is initiated by user selection of certain cells, and I
need to display a number of CommandButtons corresponding to the length of a
list associated with the user selection. My form has the maximum number of
buttons I ever expect, and a macro sizes it to display only those needed.
Im looking for a simple loop to add captions from the list, but I dont see
any way to index the button reference in a loop. What Im trying to do:

For n = 1 to List Count
CommandButtonn.Caption = Range(€śList€ť).Offset( n, 0)
Next

Obviously that wont work, so I seem to be headed for a brute force method.
Is there a more elegant way?

--
Al C

Per Jessen

Commandbutton captions
 
Hi

Assuming the CommandButtons is named "CommandButton1", "CommandButton2"....

Try this code

For n = 1 To ListCount
For Each c In Me.Controls
If c.Name = "CommandButton" & n Then
c.Caption = Range("List").Offset(n, 0).Value
Exit For
End If
Next
Next

Regards,
Per

"Al" skrev i meddelelsen
...
I have a Userform that is initiated by user selection of certain cells, and
I
need to display a number of CommandButtons corresponding to the length of
a
list associated with the user selection. My form has the maximum number
of
buttons I ever expect, and a macro sizes it to display only those needed.
Im looking for a simple loop to add captions from the list, but I dont
see
any way to index the button reference in a loop. What Im trying to do:

For n = 1 to List Count
CommandButtonn.Caption = Range(€śList€ť).Offset( n, 0)
Next

Obviously that wont work, so I seem to be headed for a brute force
method.
Is there a more elegant way?

--
Al C



Rick Rothstein \(MVP - VB\)[_2094_]

Commandbutton captions
 
Try it this way...

Private Sub UserForm_Initialize()
Dim N As Long
For N = 1 To Range("List").Count
Me.Controls("CommandButton" & N).Caption = _
Range("List").Cells(N, 1).Value
Next
End Sub

Rick


"Al" wrote in message
...
I have a Userform that is initiated by user selection of certain cells, and
I
need to display a number of CommandButtons corresponding to the length of
a
list associated with the user selection. My form has the maximum number
of
buttons I ever expect, and a macro sizes it to display only those needed.
Im looking for a simple loop to add captions from the list, but I dont
see
any way to index the button reference in a loop. What Im trying to do:

For n = 1 to List Count
CommandButtonn.Caption = Range(€śList€ť).Offset( n, 0)
Next

Obviously that wont work, so I seem to be headed for a brute force
method.
Is there a more elegant way?

--
Al C



al

Commandbutton captions
 
Thank you both. That got me past a mental lblock.
--
Al C




All times are GMT +1. The time now is 10:37 PM.

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