Tengo un Frame en Excel con varios OptionButton y deseo saber el valor del seleccionado

Tenemos un formulario en Excel vba con un Frame el cual contiene 5 OptionButton. Deseamos que al momento de elegir una de las 5 opciones me arroje el valor de dicha opción o que nos arroje un mensaje indicando que no hemos elegido ninguna opción.

Este formulario nos podrá ayudar para cuando queremos que el usuario elija sólo una opción y dicha opción se capture en alguna celda u otro formulario.

Formulario

OptionButton

Cómo funciona

El código tiene 2 rutas, una es usando Select Case y otra es usando If… Then. Cualquiera de las 2 opciones evaluará el valor de cada OptionButton elegido y validará su valor, el cual, si devuelve Verdadedero, la etiqueta o Caption de la opción se guardará en una variable llamada Opcion.

Código del formulario

Código con Select Case

Private Sub CommandButton1_Click()
Dim Blog As String
Dim Opcion As String
Blog = "EXCELeINFO"
With UserForm1
    Select Case True
    Case .opc1.Value = True
        Opcion = .opc1.Caption
    Case .opc2.Value = True
        Opcion = .opc2.Caption
    Case .opc3.Value = True
        Opcion = .opc3.Caption
    Case .opc4.Value = True
        Opcion = .opc4.Caption
    Case .opc5.Value = True
        Opcion = .opc5.Caption
    Case Else
        Opcion = "Ninguno"
    End Select
    MsgBox "El valor elegido fue '" & Opcion & "'", vbInformation, Blog
End With
End Sub

Código con If… Then

Private Sub CommandButton2_Click()
Dim Blog As String
Dim Opcion As String
Blog = "EXCELeINFO"
With UserForm1
    If .opc1.Value = True Then
        Opcion = .opc1.Caption
    ElseIf .opc2.Value = True Then
        Opcion = .opc2.Caption
    ElseIf .opc3.Value = True Then
        Opcion = .opc3.Caption
    ElseIf .opc4.Value = True Then
        Opcion = .opc4.Caption
    ElseIf .opc5.Value = True Then
        Opcion = .opc5.Caption
    Else
        Opcion = "Ninguno"
    End If
    MsgBox "El valor elegido fue '" & Opcion & "'", vbInformation, Blog
End With
End Sub

 

:: Descargar el ejemplo EXCELeINFO – Recoger valor de un OptionButton.zip

You may also like...