Grupos de botones de opción en Excel

Los botones de opción permiten a un usuario de Excel hacer una selección dentro de una lista de posibilidades y en todo momento tener un solo elemento seleccionado. Hoy mostraré cómo crear grupos de botones de opción en Excel independientes a pesar de encontrarse en la misma hoja.

Ya que podemos agregar botones de opción como controles de formulario o como controles ActiveX, este artículo tratará ambas posibilidades. Comenzaremos por la opción de controles de formulario.

Grupos de botones de opción

Supongamos que deseamos crear dos grupos de botones de opción donde queremos que el usuario seleccione su género así como su color favorito. Si pusiéramos todos los botones de opción en la misma hoja Excel solo podríamos elegir una sola opción tanto para el género como para el color:

Grupos de botones de opción en Excel

De manera predeterminada podemos seleccionar una sola opción entre todos los botones de opción ubicados en la misma hoja. La solución para crear dos grupos de botones de opción es agregar el control llamado Cuadro de grupo:

Control de formulario Cuadro de grupo en Excel

Debemos agregar un Cuadro de grupo para cada conjunto de botones de opción que deseamos crear por lo que para nuestro ejemplo agregaré dos controles de este tipo. Es muy importante que al dibujar el Cuadro de grupo te asegures de abarcar el área completa de los botones de opción que deseas asociar de manera que el grupo sea creado correctamente. Como resultado tendremos dos grupos de botones de opción totalmente independientes:

Agrupar botones de opción en una hoja de Excel

Si queremos conocer la opción seleccionada en cada grupo es suficiente con hacer clic derecho sobre cualquier botón de opción y seleccionar la opción Formato de control. En la sección Control debemos colocar la dirección de la celda de nuestra hoja que mostrará la opción seleccionada.

Vincular botón de opción con una celda

A partir de ese momento la celda B10 mostrará la opción seleccionada dentro del primer grupo:

Crear varios grupos de botones de opción en Excel

Podemos hacer lo mismo para el otro grupo de manera que los botones de opción estén vinculados con la celda B11 y de esta manera poder conocer en todo momento la opción de color seleccionada:

Cómo utilizar botones de radio en Excel

Agrupar botones de opción ActiveX

Los botones de opción ActiveX funcionan de manera diferente a los controles de formulario que acabamos de utilizar. Si revisas el botón Insertar de la ficha Programador te darás cuenta de que no existe un control para agrupar controles.

La manera de agrupar los botones de opción ActiveX es a través de una de sus propiedades. Una vez que hemos agregado los controles necesarios a la hoja debes hacer clic derecho sobre cada uno de ellos (en modo Diseño) y seleccionar la opción Propiedades. Se mostrará una ventana con las propiedades del control y debemos utilizar la propiedad GroupName:

Propiedad GroupName de un botón de opcion ActiveX

Puedes observar en la imagen que estoy consultando las propiedades del botón de opción Femenino y estoy asignando el nombre de grupo “Genero”. Debo hacer lo mismo con el botón de opción Masculino, y una vez hecho, los dos botones de opción tendrán el mismo valor en su propiedad GroupName. De esta manera tendremos dos grupos de botones de opción ActiveX que funcionan de manera independiente dentro de la misma hoja:

Botones de opción ActiveX en Excel 2010

Para saber si un botón de opción está seleccionado debemos consultar su propiedad Value y si tiene el valor True quiere decir que dicho botón de opción está seleccionado. Por ejemplo, agregaré un botón de comando a la hoja de Excel que tendrá el siguiente código:

Private Sub CommandButton1_Click()

	If OptionButton1.Value = True Then
		Range("B10").Value = "Femenino"
	Else
		Range("B10").Value = "Masculino"
	End If

End Sub

Al seleccionar una opción del grupo Genero y pulsar el botón de comando, la celda B10 mostrará el valor Femenino o Masculino de acuerdo a la selección realizada.

Propiedad Value de un botón de opción en Excel

De esta manera hemos aprendido a crear grupos de botones de opción en Excel, ya sea con controles de formulario o controles ActiveX, de manera que se comporten de manera independiente a pesar de estar ubicados en la misma hoja.

Descarga el libro de trabajo que he utilizado en la creación de este ejemplo donde además verás que he agregado código VBA adicional al evento Click del botón de comando ActiveX para mostrar la selección en el segundo grupo de botones de opción.

Artículos relacionados
Introducción a las macros
Botón de opción en VBA

30 pensamientos en “Grupos de botones de opción en Excel

  1. Jorge

    Excel ente!! Soy nuevo acá y con los dos correos que recibi aprendí un monton.. gracias. jorge

  2. Yuniol Dice

    Exelente, cada dia aprendo mas gracias.

  3. Naibaf

    Excelente aporte, muchas gracias.!

  4. julio contreras

    Estimado Moisés,

    Excelente, muy buen trabajo, y muy digno tú al compartir, sé que verás aumentado tu caudal en beneficios a hacer esto.
    desde Temuco – Chile

  5. eduardo

    sensacional, que simple que lo haces, de gran ayuda para mi este material, muchisimas gracias por tu aporte!

  6. fernando

    Maestro !!!!!!! excelente lección…… sin mas palabras……

  7. carmen

    Esta parte de programar es muy util, ojalá pudieran seguir enviando opciones de programar una pantalla de captura de datos y se fuera almacenando en una base de datos.

  8. Rick

    Excelente tip para hacer menus de opciones, 100% recomendable!

  9. ISABEL

    MUCHAS GRACIAS POR TUS ARTICULOS Y POR TU AYUDA!!!!
    SALUDOS…

  10. JUAN EUCEDA

    MUCHAS GRACIAS LOS TUTORIALES SON MAGINIFICOS, Y NOS AYUDAN A REALIZAR NUESTRO TRABAJO DE UNA MEJOR MANERA, ME GUSTARIA SABER COMO HACER UN FORMULARIO CON LISTA DESPLEGABLE EN EXELL Y CON COBINACION DE COMANDOS PARA UNA HOJA DE ALTA DE PERSONAL PARA UNA EMPRESA.
    LES AGRADESCO DE ANTEMANO LA ATENCION A LA PRESENTE .
    ATTE.

    JUAN EUCEDA

  11. Isaac Gamboa

    Muy claro y muy útil. Siempre va uno adaptando los tips de ExcelTotal para hacer más sencilla o profesional la vida diaria.

    Saludos.

  12. Renato

    Me es de mucho interés esta página…gracias ya que por medio de este sitio aprendo más ya que me estoy incursionando en VBA de excel.

  13. EVA

    GENIAL….GRACIAS

  14. Jose

    Bueno en realidad son muy buenos los consejos, una pregunta no encuentro al opción programador no se si me podrias indicar esa parte gracias.

  15. Jesús

    Muchas gracias por compartir toda esta información, me ha sido de mucha utilidad y cada vez se aprende algo nuevo, nuevamente, Gracias

  16. victor manuel jimenez urbina

    gracias es un tema muy interesante de mucha utilidad felicidades y gracias por tu apoyo

  17. ricardo

    Gracias por todos los correos recibidos. Fáciles de entender, un gran aporte.
    Nuevamente gracias.

  18. Norma constanza

    Excelente, mil gracias por esas explicaciones tan buenas y claras mil gracias……….

  19. Marvin

    Tutoriales sencillamente excelentes.Gracias por sus enseñanzas.

  20. CRIS

    gracias maestro con estos tips me has hecho quedar muy bien en la ofi lo recomendare a mis colegas ……

  21. RUBEN DARIO JIMENEZ

    que interesante, gracias excel por esa oprtunidad de compartir todos estos temas

  22. bebitalita22

    Este tema me es de mucha ayuda espero sigan así enviando nuevos temas para poder seguir aprendiendo.

  23. Antonio

    Excelente la Calidad de material Gracias Es de Ayuda

  24. jose david londoño

    Muy buena la página, es la primera vez que la visito y quedé fascinado con la manera de dar la explicación para cada caso, como si el tutorial de excel fuera personal

  25. Emilio Estevez

    Muy clara la explicación. Gracias a personas como Usted, los demás podemos aprender. Gracias por compartir sus conocimientos.

  26. Marisa

    Hola podrían indicarme como programar los controles dentro de un marco que se encuentre en un formulario VBA?
    Es decir, no en la planilla, sino en un formulario programado desde el editor de Visual Basic.
    Estoy buscando por toda la red, pero no logro encontrar una explicación de esto que les solicito, todos muestran como crear el formulario, pero no se explica un paso a paso de como capturar los datos que se introducen en él.
    Desde ya muchas gracias

  27. Toni

    ¿Se pueden bloquear los botones de opción ActiveX”. Quiero que según el valor de una lista, esté bloqueados o no.
    Muchas gracias

    1. Moisés Ortíz Autor

      Hola Toni, puedes controlar el estado del control con la propiedad Enabled, por ejemplo:
      OptionButton1.Enabled = False