ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Refer to controls by group name. (https://www.excelbanter.com/excel-programming/388224-refer-controls-group-name.html)

stewart

Refer to controls by group name.
 
I have a userfrom that functions as an employee evaluation. There are
several areas of evaluation that I have assigned option buttons to.
There are four option buttons to each criteria. When the user is done
evaluating I want to verify that each criteria has been evaluated.
What I have works but it is repetitive and seems like there should be
a more efficient way to achieve my desired results. Is there a way to
check if all optionbuttons in a group are false? Below is my code.
Any help would be appreciated.

sub verify()
If opt1.Value = False And opt2.Value = False And opt3.Value = False
And opt4.Value = False Then
GoTo 2
ElseIf opt5.Value = False And opt6.Value = False And
opt7.Value = False And opt8.Value = False Then
GoTo 2
ElseIf opt9.Value = False And opt10.Value = False And
opt11.Value = False And opt12.Value = False Then
GoTo 2
ElseIf opt13.Value = False And opt14.Value = False And
opt15.Value = False And opt16.Value = False Then
GoTo 2
ElseIf opt17.Value = False And opt18.Value = False And
opt19.Value = False And opt20.Value = False Then
GoTo 2
End If
exit sub
2: msgbox "Please verify that the evaluation is complete."
end sub


Tom Ogilvy

Refer to controls by group name.
 
Dim op as Control
for each op in Userform1.Controls
if typeof op is Msforms.OptionButton then
if op.value then cnt = cnt + 1
end if
Next
if cnt < 5 then
msgbox "Please verify that the evaluation is complete."
end if

--
Regards,
Tom Ogilvy


"stewart" wrote:

I have a userfrom that functions as an employee evaluation. There are
several areas of evaluation that I have assigned option buttons to.
There are four option buttons to each criteria. When the user is done
evaluating I want to verify that each criteria has been evaluated.
What I have works but it is repetitive and seems like there should be
a more efficient way to achieve my desired results. Is there a way to
check if all optionbuttons in a group are false? Below is my code.
Any help would be appreciated.

sub verify()
If opt1.Value = False And opt2.Value = False And opt3.Value = False
And opt4.Value = False Then
GoTo 2
ElseIf opt5.Value = False And opt6.Value = False And
opt7.Value = False And opt8.Value = False Then
GoTo 2
ElseIf opt9.Value = False And opt10.Value = False And
opt11.Value = False And opt12.Value = False Then
GoTo 2
ElseIf opt13.Value = False And opt14.Value = False And
opt15.Value = False And opt16.Value = False Then
GoTo 2
ElseIf opt17.Value = False And opt18.Value = False And
opt19.Value = False And opt20.Value = False Then
GoTo 2
End If
exit sub
2: msgbox "Please verify that the evaluation is complete."
end sub



stewart

Refer to controls by group name.
 
is there a way to show which control launches the message box i tried
op.setfocus but it comes up with object not defined

Dim op as Control
for each op in Userform1.Controls
if typeof op is Msforms.OptionButton then
if op.value then cnt = cnt + 1
end if
Next
if cnt < 5 then
op.setfocus
msgbox "Please verify that the evaluation is complete."
end if

On Apr 26, 3:06 pm, Tom Ogilvy
wrote:
Dim op as Control
for each op in Userform1.Controls
if typeof op is Msforms.OptionButton then
if op.value then cnt = cnt + 1
end if
Next
if cnt < 5 then
msgbox "Please verify that the evaluation is complete."
end if

--
Regards,
Tom Ogilvy

"stewart" wrote:
I have a userfrom that functions as an employee evaluation. There are
several areas of evaluation that I have assigned option buttons to.
There are four option buttons to each criteria. When the user is done
evaluating I want to verify that each criteria has been evaluated.
What I have works but it is repetitive and seems like there should be
a more efficient way to achieve my desired results. Is there a way to
checkif all optionbuttons in agroupare false? Below is my code.
Any help would be appreciated.


sub verify()
If opt1.Value = False And opt2.Value = False And opt3.Value = False
And opt4.Value = False Then
GoTo 2
ElseIf opt5.Value = False And opt6.Value = False And
opt7.Value = False And opt8.Value = False Then
GoTo 2
ElseIf opt9.Value = False And opt10.Value = False And
opt11.Value = False And opt12.Value = False Then
GoTo 2
ElseIf opt13.Value = False And opt14.Value = False And
opt15.Value = False And opt16.Value = False Then
GoTo 2
ElseIf opt17.Value = False And opt18.Value = False And
opt19.Value = False And opt20.Value = False Then
GoTo 2
End If
exit sub
2: msgbox "Please verify that the evaluation is complete."
end sub





All times are GMT +1. The time now is 10:35 AM.

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