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.