Sow do i make a userform know if a value is true in a frame, then

G

Guest

I am trying to make a list that will list what catagory and items chosen in
that catagory. For example, Catagory is animals. WHen i generate the list i
want the program to List the Catagory and then list any true (checked)
values in the frame in the userform. If there are no checked boxes then i
want it to skip the output for that frame. I know i can write it like this

Range("A1").select
If cat.value=false and dog.value=false and ... Then
Else

If cat.value=true Then
activecell.value=cat
activecell.offset(1,0).select
End If
If dog.value=true Then
activecell.value=dog
activecell.offset(1,0).select
End If
End If

After this the next frame with a different catagory would go through its code.

Is there any way to shorten the code using a loop or some other method? I
will have close to 100 or more items in the final list and i want to make it
more simple in the code.

Thanks, CSUS_CE_Student
 
G

Guest

Not being able to see everything, and not knowing if your checkbox names are
actually as you've described them here, I'll take a stab at it anyhow. This
assumes that the control names are in the Caption portion of the checkbox.
In other words you have checkboxs that appear as the box with text like "Dog"
or "Cat" or "Horse" displayed. You have a button on the form Named
ShowTrueSelections - will probably have several sections of code similar to
this, one for each grouping. I'm just having hard time picturing how your
form is set up. Maybe this will at least give you some ideas on how to
attack it.

Private Sub ShowTrueSelections_Click()
Dim ctl As Control

Range("A1").Select
For Each ctl In Me.Controls
If TypeName(ctl) = "CheckBox" And ctl = True Then
ActiveCell = ctl.Caption
ActiveCell.Offset(1, 0).Activate
End If
Next

End Sub
 

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

Top