Curso Excel VBA y Macros – Cap. 62 – Formularios – OptionButton – Ejecutar dependiendo la opción elegida
En este video tutorial veremos el uso del Control ActiveX OptionButton o botón de opción, el cual tendrá el comportamiento de activarse y desactivarse. En caso de estar marcado o activado su propiedad será TRUE o VERDADERO, y en caso de estar desmarcado o desactivado, su propiedad será FALSE o FALSO. Veremos en este tutorial:
-
Determinar la opción elegida usando IF-THEN-ELSE.
-
Determinar la opción elegida usando SELECT CASE.
-
Crear grupos de botones.
Ver video Capítulo 62 Excel VBA & Macros
Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.
Determinar la opción elegida usando IF THEN ELSE
Como vimos, para determinar qué opción está elegida, debemos determinar cuál tiene el valor de TRUE, por lo que podemos usar la estructura de control IF-THEN-ELSE para validar cada una de las opciones y devolver el valor de la que esté elegida.
Figura 1. Determinar la opción elegida de un OptionButton.
Private Sub CommandButton1_Click()
Dim Opcion As String
If Me.OptionButton1.Value = True Then
Opcion = Me.OptionButton1.Caption
ElseIf Me.OptionButton2.Value = True Then
Opcion = Me.OptionButton2.Caption
ElseIf Me.OptionButton3.Value = True Then
Opcion = Me.OptionButton3.Caption
Else
Opcion = "Ninguno"
End If
MsgBox "El botón elegido fue '" & Opcion & "'.", vbInformation, "EXCELeINFO"
End Sub
Determinar la opción elegida usando SELECT CASE
Ahora mediante la instrucción SELECT-CASE podremos determinar la opción elegida. Al final, ustedes decidirán si usar IF o SELECT para validar la opción elegida.
Private Sub CommandButton2_Click()
Dim Opcion As String
Select Case True
Case Me.OptionButton1.Value = True
Opcion = Me.OptionButton1.Caption
Case Me.OptionButton2.Value = True
Opcion = Me.OptionButton2.Caption
Case Me.OptionButton3.Value = True
Opcion = Me.OptionButton3.Caption
Case Else
Opcion = "Ninguno"
End Select
MsgBox "La opción elegida fue '" & Opcion & "'.", vbInformation, "EXCELeINFO"
End Sub
Ejecutar macros dependiendo la opción elegida
En este ejemplo podremos ejecutar macros dependiendo la opción elegida. Esto nos puede ayudar a avanzar en un flujo de trabajo dependiendo el Botón marcado.
Figura 2. Ejecutar macros dependiendo la opción elegida en un OptionButton.
Private Sub CommandButton3_Click()
If Me.OptionButton4.Value = False And Me.OptionButton5.Value = False Then MsgBox "Elije una opción.": Exit Sub
If Me.OptionButton4.Value = True Then
MsgBox "Se haría una acción."
Else
MsgBox "Se haría otra acción."
End If
End Sub
Descarga el archivo de ejemplo
062 – Forrmularios Control OptionButton Botón de opción – EXCELeINFO.zip
Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

