Radio Buttons

atari

New Member
Joined
Jan 29, 2021
Messages
31
Office Version
  1. 365
  2. 2010
Platform
  1. Windows
  2. MacOS
I am creating a document that will have a number of categories (let's say A, B, C, etc...) and I am using Radio buttons so you can select either 1, 2 or 3 within each section. So I have the choices 1, 2 & 3 grouped together horizontally for category A, then another 1, 2 3 for category B and so on.

I would like to have a vertical option that if I select "Choose All" it would check only 1 for all categories, or all 2's or all 3's. I would like it to clear any 2's or 3's that may have been chosen previously, if the "Choose All" for 1 was selected.

Does anyone know of a way to do this?
 
Yes, I did that. The buttons are working within each category, but the "Select All" options are not working. It may be hard to see the sheet in the image I uploaded, but you will see its a little more complicated than just categories A, B &C... I have 3 Spec Package options that (once I fill in all the product options), I would like people to be able to choose either the full A-1 package, the full A-2, or the Upgraded package, AND have the option to choose all of one package, then let's say choose just the flooring from a different package.

I used your VBA formula and tried to adapt it for the extra categories. You will see that I marked the radio button numbers in Blue right above each button. I also have the grouping box numbers marked in Red in column I (each group spans across all 3 packages and I have the lines hidden). I also wasn't sure what to do with CheckBox 17 that you have listed in there, so to test it out, I created a checkbox 17 in cell AC3.

Hopefully you can see all this... Here is how I adapted the VBA code:
Sub CheckAllOptions()
Dim manyButtons As Variant, oneButton As Variant
If ActiveSheet.Shapes("Check Box 17").ControlFormat.Value = xlOn Then

If ActiveSheet.Shapes("Option Button 437").ControlFormat.Value = xlOn Then
manyButtons = oButtons(1)
ElseIf ActiveSheet.Shapes("Option Button 438").ControlFormat.Value = xlOn Then
manyButtons = oButtons(2)
ElseIf ActiveSheet.Shapes("Option Button 439").ControlFormat.Value = xlOn Then
manyButtons = oButtons(3)
Else
Exit Sub
End If

For Each oneButton In manyButtons
oneButton.ControlFormat.Value = xlOn
Next oneButton
Else
ActiveSheet.Shapes(Application.Caller).ControlFormat.Value = False
Beep
End If
End Sub

Sub CheckBox17_Click()
If ActiveSheet.Shapes("Check Box 17").ControlFormat.Value = xlOff Then
ActiveSheet.Shapes("Option Button 437").ControlFormat.Value = xlOff
ActiveSheet.Shapes("Option Button 438").ControlFormat.Value = xlOff
ActiveSheet.Shapes("Option Button 439").ControlFormat.Value = xlOff
End If
End Sub

Function oButtons(index As Long) As Variant
With Sheets("sheet1")
Select Case index
Case 1
oButtons = Array(.Shapes("Option Button 2"), .Shapes("Option Button 3"), .Shapes("Option Button 4"))
Case 2
oButtons = Array(.Shapes("Option Button 6"), .Shapes("Option Button 7"), .Shapes("Option Button 8"))
Case 3
oButtons = Array(.Shapes("Option Button 9"), .Shapes("Option Button 10"), .Shapes("Option Button 11"))
Case 4
oButtons = Array(.Shapes("Option Button 12"), .Shapes("Option Button 13"), .Shapes("Option Button 14"))
Case 5
oButtons = Array(.Shapes("Option Button 15"), .Shapes("Option Button 16"), .Shapes("Option Button 17"))
Case 6
oButtons = Array(.Shapes("Option Button 18"), .Shapes("Option Button 19"), .Shapes("Option Button 20"))
Case 7
oButtons = Array(.Shapes("Option Button 21"), .Shapes("Option Button 22"), .Shapes("Option Button 23"))
Case 8
oButtons = Array(.Shapes("Option Button 24"), .Shapes("Option Button 25"), .Shapes("Option Button 26"))
Case 9
oButtons = Array(.Shapes("Option Button 27"), .Shapes("Option Button 28"), .Shapes("Option Button 29"))
Case 10
oButtons = Array(.Shapes("Option Button 30"), .Shapes("Option Button 31"), .Shapes("Option Button 32"))
Case 11
oButtons = Array(.Shapes("Option Button 33"), .Shapes("Option Button 34"), .Shapes("Option Button 35"))
Case 12
oButtons = Array(.Shapes("Option Button 36"), .Shapes("Option Button 37"), .Shapes("Option Button 38"))
Case 13
oButtons = Array(.Shapes("Option Button 39"), .Shapes("Option Button 40"), .Shapes("Option Button 41"))
Case 14
oButtons = Array(.Shapes("Option Button 42"), .Shapes("Option Button 43"), .Shapes("Option Button 44"))
Case 15
oButtons = Array(.Shapes("Option Button 45"), .Shapes("Option Button 46"), .Shapes("Option Button 47"))
Case 16
oButtons = Array(.Shapes("Option Button 48"), .Shapes("Option Button 49"), .Shapes("Option Button 50"))
Case 17
oButtons = Array(.Shapes("Option Button 51"), .Shapes("Option Button 52"), .Shapes("Option Button 53"))
Case 18
oButtons = Array(.Shapes("Option Button 54"), .Shapes("Option Button 55"), .Shapes("Option Button 56"))
Case 19
oButtons = Array(.Shapes("Option Button 57"), .Shapes("Option Button 58"), .Shapes("Option Button 59"))
Case 20
oButtons = Array(.Shapes("Option Button 60"), .Shapes("Option Button 61"), .Shapes("Option Button 62"))
Case 21
oButtons = Array(.Shapes("Option Button 63"), .Shapes("Option Button 64"), .Shapes("Option Button 65"))
Case 22
oButtons = Array(.Shapes("Option Button 66"), .Shapes("Option Button 67"), .Shapes("Option Button 68"))
Case 23
oButtons = Array(.Shapes("Option Button 69"), .Shapes("Option Button 70"), .Shapes("Option Button 71"))
Case 24
oButtons = Array(.Shapes("Option Button 72"), .Shapes("Option Button 73"), .Shapes("Option Button 74"))
Case 25
oButtons = Array(.Shapes("Option Button 75"), .Shapes("Option Button 76"), .Shapes("Option Button 77"))
Case 26
oButtons = Array(.Shapes("Option Button 78"), .Shapes("Option Button 79"), .Shapes("Option Button 80"))
Case 27
oButtons = Array(.Shapes("Option Button 81"), .Shapes("Option Button 82"), .Shapes("Option Button 83"))
Case 28
oButtons = Array(.Shapes("Option Button 84"), .Shapes("Option Button 85"), .Shapes("Option Button 86"))
Case 29
oButtons = Array(.Shapes("Option Button 87"), .Shapes("Option Button 88"), .Shapes("Option Button 89"))
Case 30
oButtons = Array(.Shapes("Option Button 90"), .Shapes("Option Button 91"), .Shapes("Option Button 92"))
Case 31
oButtons = Array(.Shapes("Option Button 93"), .Shapes("Option Button 94"), .Shapes("Option Button 95"))
Case 32
oButtons = Array(.Shapes("Option Button 96"), .Shapes("Option Button 97"), .Shapes("Option Button 98"))
Case 33
oButtons = Array(.Shapes("Option Button 99"), .Shapes("Option Button 100"), .Shapes("Option Button 101"))
Case 34
oButtons = Array(.Shapes("Option Button 102"), .Shapes("Option Button 103"), .Shapes("Option Button 104"))
Case 35
oButtons = Array(.Shapes("Option Button 105"), .Shapes("Option Button 106"), .Shapes("Option Button 107"))
Case 36
oButtons = Array(.Shapes("Option Button 108"), .Shapes("Option Button 109"), .Shapes("Option Button 110"))
Case 37
oButtons = Array(.Shapes("Option Button 111"), .Shapes("Option Button 112"), .Shapes("Option Button 113"))
Case 38
oButtons = Array(.Shapes("Option Button 114"), .Shapes("Option Button 115"), .Shapes("Option Button 116"))
Case 39
oButtons = Array(.Shapes("Option Button 117"), .Shapes("Option Button 118"), .Shapes("Option Button 119"))
Case 40
oButtons = Array(.Shapes("Option Button 120"), .Shapes("Option Button 121"), .Shapes("Option Button 122"))
Case 41
oButtons = Array(.Shapes("Option Button 123"), .Shapes("Option Button 124"), .Shapes("Option Button 125"))
Case 42
oButtons = Array(.Shapes("Option Button 126"), .Shapes("Option Button 127"), .Shapes("Option Button 128"))
Case 43
oButtons = Array(.Shapes("Option Button 129"), .Shapes("Option Button 130"), .Shapes("Option Button 131"))
Case 44
oButtons = Array(.Shapes("Option Button 132"), .Shapes("Option Button 133"), .Shapes("Option Button 134"))
Case 45
oButtons = Array(.Shapes("Option Button 135"), .Shapes("Option Button 136"), .Shapes("Option Button 137"))
Case 46
oButtons = Array(.Shapes("Option Button 138"), .Shapes("Option Button 139"), .Shapes("Option Button 140"))
Case 47
oButtons = Array(.Shapes("Option Button 141"), .Shapes("Option Button 142"), .Shapes("Option Button 143"))
Case 48
oButtons = Array(.Shapes("Option Button 144"), .Shapes("Option Button 145"), .Shapes("Option Button 146"))
Case 49
oButtons = Array(.Shapes("Option Button 147"), .Shapes("Option Button 148"), .Shapes("Option Button 149"))
Case 50
oButtons = Array(.Shapes("Option Button 150"), .Shapes("Option Button 151"), .Shapes("Option Button 152"))
Case 51
oButtons = Array(.Shapes("Option Button 153"), .Shapes("Option Button 154"), .Shapes("Option Button 155"))
Case 52
oButtons = Array(.Shapes("Option Button 156"), .Shapes("Option Button 157"), .Shapes("Option Button 158"))
Case 53
oButtons = Array(.Shapes("Option Button 159"), .Shapes("Option Button 160"), .Shapes("Option Button 161"))
Case 54
oButtons = Array(.Shapes("Option Button 162"), .Shapes("Option Button 163"), .Shapes("Option Button 164"))
Case 55
oButtons = Array(.Shapes("Option Button 165"), .Shapes("Option Button 166"), .Shapes("Option Button 167"))
Case 56
oButtons = Array(.Shapes("Option Button 168"), .Shapes("Option Button 169"), .Shapes("Option Button 170"))
Case 57
oButtons = Array(.Shapes("Option Button 171"), .Shapes("Option Button 172"), .Shapes("Option Button 173"))
Case 58
oButtons = Array(.Shapes("Option Button 174"), .Shapes("Option Button 175"), .Shapes("Option Button 176"))
Case 59
oButtons = Array(.Shapes("Option Button 177"), .Shapes("Option Button 178"), .Shapes("Option Button 179"))
Case 60
oButtons = Array(.Shapes("Option Button 180"), .Shapes("Option Button 181"), .Shapes("Option Button 182"))
Case 61
oButtons = Array(.Shapes("Option Button 183"), .Shapes("Option Button 184"), .Shapes("Option Button 185"))
Case 62
oButtons = Array(.Shapes("Option Button 186"), .Shapes("Option Button 187"), .Shapes("Option Button 190"))
End Select
End With
End Function
Sorry... Even just my screenshot seems to be too big to upload
 
Upvote 0

Excel Facts

Repeat Last Command
Pressing F4 adds dollar signs when editing a formula. When not editing, F4 repeats last command.
I just tried a mini sheet, and it's just not gonna show you clearly what I'm referring to...
 
Last edited by a moderator:
Upvote 0
As you have controls on the sheet the XL2BB won't help.
However you can upload a file to a share site, such as OneDrive, DrpBox, GoogleDirve. Then mark for sharing & post the link you are given to the thread.
 
Upvote 0
Thank you! Okay, let's try this...

Has anyone been able to take a look at this? Can someone give me a little insight on what's wrong with the VBA code I have in there and why the 'Select All' options are not working?
Any help would be much appreciated
 
Upvote 0

Forum statistics

Threads
1,215,758
Messages
6,126,709
Members
449,331
Latest member
smckenzie2016

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top