If you set the
TripleState property of an
OptionButton to
True, you can programmatically set the value of the
OptionButton to
Null. This will give you the same effect as setting the
CheckBox control to
Null (the
OptionButton appears dimmed).
Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs.
If you have limited programming experience, you may want to contact a Microsoft Certified Partner or Microsoft Advisory Services. For more information, visit these Microsoft Web sites:
Microsoft Certified Partners -
https://partner.microsoft.com/global/30000104Microsoft Advisory Services -
http://support.microsoft.com/gp/advisoryserviceFor more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS
The following example macro demonstrates setting an
OptionButton to
Null.
Setting Up the Control
- Close and save any open workbooks, and then open a new workbook.
- If the Control Toolbox toolbar is not visible, point to Toolbars on the View menu, and then click Control Toolbox.
- Click the OptionButton control on the Control Toolbox toolbar, and then draw an OptionButton on Sheet1.
- Click the Exit Design Mode button on the Control Toolbox toolbar.
Sample Macro Code
- On the Tools menu, point to Macro, and then click Visual Basic Editor.
- On the Insert menu click Module.
- Enter the following code in the module.
Sub Set_Option()
Dim Choice As Integer
Dim MyPrompt As String
MyPrompt = "Type 1 for Selected, 2 for Not Selected and 3 for Grayed"
Choice = InputBox(MyPrompt)
Select Case Choice
Case 1
Sheet1.OptionButton1.Value = True
Case 2
Sheet1.OptionButton1.Value = False
Case 3
Sheet1.OptionButton1.Value = Null
End Select
End Sub
Running the Macro
- Return to Microsoft Excel (press ALT+F11).
- Select any cell in Sheet1.
- On the Tools menu, point to Macro, and then click Macros.
- Select Set_Option and click Run.
- Enter either 1, 2, or 3 in the InputBox when prompted, and click OK.
The
OptionButton will be set to the state that matches the number you
entered in the InputBox (1 = ON, 2 = OFF, 3 = Grayed).