Solved

excel form checkboxes

Posted on 2014-03-23
6
237 Views
Last Modified: 2014-03-24
hello all,

is there a faster way in vba to add multiple check-boxes in a form in excel? the checkbox names could be checkbox1,checkbox2,checkbox3.....etc

i have create 35 checkboxes within a form and then do the same for other forms as well...so this is kind of pain

Thank you
0
Comment
Question by:Rayne
  • 4
  • 2
6 Comments
 
LVL 33

Accepted Solution

by:
Norie earned 500 total points
ID: 39949656
Do you mean a userform or a form on a worksheet?

For a userform you could use something like this.
Private Sub UserForm_Initialize()
Dim chk As MSForms.Checkbox
Dim lngTop As Long

    lngTop = 5

    For I = 1 To 35
        Set chk = Me.Controls.Add("Forms.CheckBox.1, "CheckBox" & I)
        chk.Top = lngTop
        lngTop = lngTop+chk.Height+5
    Next I

End Sub

Open in new window

That puts all the checkboxes in one column which might not be suitable but the code can be refined to place them in some other configuration.

Similar code can be created if the form is on a sheet.

By the way, you could use a listbox with MultiSelect set to fmMultiSelectMulti and ListStyle set to fmListStyleOption.

That would show a chekcbox next to each item in the listbox.
0
 

Author Comment

by:Rayne
ID: 39949682
Thank you Imnorie, that is awesome
how can use the listbox - how can i populate the list box with data set from one column in worksheet - please assist
0
 

Author Comment

by:Rayne
ID: 39949693
so the question is > how do i add a set of vlaues in a worksheet to that awesome list box you mentioned? I am not able to populate the listbox so far..

Thank you
0
Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

 

Author Comment

by:Rayne
ID: 39949699
you are awesome imnorie, you saved me a huge chunk of time - listbox rocks, checkboxes not.....thank you thank you , i got it :)
0
 
LVL 33

Expert Comment

by:Norie
ID: 39950169
I take it you figured out the listbox?

If you didn't here's a simple example that populates a listbox from A2:A35 on Sheet1 and sets it up to display checkboxes.
Private Sub UserForm_Initialize()

    With Me.ListBox1
        .List = Sheets("Sheet1").Range("A2:A35").Value
        .ListStyle = fmListStyleOption
        .MultiSelect = fmMultiSelectMulti
    End With

End Sub

Open in new window

0
 

Author Comment

by:Rayne
ID: 39950669
Thank you Imnorie,

This is Perfection to the ULTIMATE, thank you, thank you :)
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Outlook Free & Paid Tools
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
This Micro Tutorial will demonstrate how to create pivot charts out of a data set. I also added a drop-down menu which allows to choose from different categories in the data set and the chart will automatically update.

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question