+ Reply to Thread
Results 1 to 3 of 3

Looping Thru Objects in UserForms

  1. #1
    RobC
    Guest

    Looping Thru Objects in UserForms

    Need a little help trying to loop through objects on a form. I have say,
    10 checkboxes and a ComboBox on a UserForm and based on ComboBox selection
    (1-10) I want to make visible = false any chekbox over that value. I can
    do this individually but would like to loop through each one as I have many
    sets. The Checkbox Names are "C1" thru "C10". I was hoping to
    loop/increment throught the Number portion "C x". I can do this looping in
    Cells, but not in UserForms. I tried the "Evaluate" but could never get it
    correct. I do this in javascript using eval but can't figure this out in
    VB. Thanks, Rob

  2. #2
    Jake Marx
    Guest

    Re: Looping Thru Objects in UserForms

    Hi RobC,

    Something like this should work:

    Private Sub cboTest_Change()
    Dim ctl As Control

    On Error Resume Next
    For Each ctl In Controls
    If TypeOf ctl Is MSForms.CheckBox Then
    ctl.Visible = (CInt(Mid$(ctl.Name, 2)) _
    <= CInt(cboTest.Text))
    End If
    Next ctl
    On Error GoTo 0
    End Sub

    --
    Regards,

    Jake Marx
    MS MVP - Excel
    www.longhead.com

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


    RobC wrote:
    > Need a little help trying to loop through objects on a form. I have
    > say, 10 checkboxes and a ComboBox on a UserForm and based on
    > ComboBox selection (1-10) I want to make visible = false any chekbox
    > over that value. I can do this individually but would like to loop
    > through each one as I have many sets. The Checkbox Names are "C1"
    > thru "C10". I was hoping to loop/increment throught the Number
    > portion "C x". I can do this looping in Cells, but not in UserForms.
    > I tried the "Evaluate" but could never get it correct. I do this in
    > javascript using eval but can't figure this out in VB. Thanks, Rob


  3. #3
    Bob Phillips
    Guest

    Re: Looping Thru Objects in UserForms

    Dim ctl As msforms.Control

    For Each ctl In Me.Controls
    If Left(ctl.Name, 8) = "CheckBox" Then
    If Val(Right(ctl.Name, 2)) > 9 Then
    ctl.Value = False
    End If
    End If
    Next ctl


    --

    HTH

    RP
    (remove nothere from the email address if mailing direct)


    "RobC" <[email protected]> wrote in message
    news:[email protected]...
    > Need a little help trying to loop through objects on a form. I have say,
    > 10 checkboxes and a ComboBox on a UserForm and based on ComboBox

    selection
    > (1-10) I want to make visible = false any chekbox over that value. I can
    > do this individually but would like to loop through each one as I have

    many
    > sets. The Checkbox Names are "C1" thru "C10". I was hoping to
    > loop/increment throught the Number portion "C x". I can do this looping

    in
    > Cells, but not in UserForms. I tried the "Evaluate" but could never get

    it
    > correct. I do this in javascript using eval but can't figure this out in
    > VB. Thanks, Rob




+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1