Propiedades del "Botón de opcion" de la barra "Formularios"

15/05/2010 - 22:11 por ElProfe | Informe spam
Tengo en una hoja una buena cantidad de "Cuadros de grupo", que en su
interior contienen varios "Botones de opción" (hechos con la -Barra de
formularios-) y funcionan perfectamente.

Al respecto me han surgido varias inquietudes:

1) Como hago o por donde, puedo saber o conocer el nombre de cada
botón?

2) Puedo cambiar el nombre de los botones por el que yo quiera
(siempre y cuando sea coherente)?

3) Como puedo hacer para que de manera automática (supongo que con una
macro), cada vez que alguien utilice esa hoja, encuentre todos los
botones limpios; es decir con su "Valor sin activar", el que se
encuentra en la pestaña "Control" del "Formato de control"

La grabadora de macros me provee el siguiente código, pero al
ejecutarlo limpia los botones de un solo cuadro de grupo:

Sub LimpiarBotones()
' Grabada el 13-05-2010 - ElProfe
ActiveSheet.Shapes("Option Button 21").Select
With Selection
.Value = xlOff
.LinkedCell = ""
.Display3DShading = True
End With
ActiveSheet.Shapes("Option Button 43").Select
With Selection
.Value = xlOff
.LinkedCell = ""
.Display3DShading = True
End With
ActiveSheet.Shapes("Option Button 31").Select
With Selection
.Value = xlOff
.LinkedCell = ""
.Display3DShading = True
End With
End Sub

Bueno, eso era todo. Gracias anrticipadas por los que se interesen en
el tema y por la ayuda que me puedan brindar.
 

Leer las respuestas

#1 ElProfe
16/05/2010 - 22:25 | Informe spam
Bueno amigos del foro, como decía mi mamá, "mande y hágalo".

Miestras esperaba alguna luz sobre mis inquietudes, encontré lo
siguiente:

1) Como hacer para conocer el nombre que tiene cada botón?

-Encontré tes posibilidades, a saber:-

R1a) La más sencilla; al momento de crear el botón desde la "Barra de
Herramientas - Formularios", el botón mismo aparece con el nombre
"Botón de opción XX", donde XX es un número consecutivo que se
incrementa en la medida en que se van creando mas botones.

R1b) Si el botón ya está creado y le habíamos cambido el nombre,
hacemos clic derecho sobre el, para seleccionar el botón (que se vea
su contorno que es como una dina malla) y mientras tanto en la parte
superior izquierda de la hoja de Excel, justo en el espacio destinado
al "Cuadro de nombres" se alcansa a apreciar parte del nombre original
del boton (una limitación visual del campo mismo para no quitarle
capacidad a la barra de fórmulas), donde se alcansa a leer algo así
como "Botón de opci...", pero al hacer clic dentro del "Cuadro de
nombres" se conoce el nombre completo del botón seleccionado.

R1c) Si el botón ya está creado y hemos cambido su nombre, hacemos un
clic derecho sobre el, para seleccionar el botón y luego vamos a
[Insertar][Nombre][Definir] y en la caja de dialogo "Definir nombre",
en la sección "Se refiere a:", figura el nombre completo del botón
seleccionado.

2) Como hacer para cambiar el nombre de un botón?

R2) "blanco es, gallina lo pone y frito se come"; como el refrán, si
la respuesta de R1b) habló del "Cuadro de nombres", pues bastaría
seleccionarlo como ya se dijo y allí mismo en el "Cuadro de nombres"
podemos renombrarlo a nuestro gusto o necesidad.

3) Como hacer para que al inicio, los botones queden limpios
automáticamente?

R3) definitivamente el problema era conocer el nombre del botón y una
vez identificado este, pues hice un código (de los simples porque de
VBA no se nada!), que más o menos es como sigue:

Sub Blanqueador()
' Colocamos botones de opción en blanco

' Botón Pregunta 1
ActiveSheet.Shapes("Botón 01").Select
With Selection
.Value = xlOff
End With

ActiveSheet.Shapes("Botón 02").Select
With Selection
.Value = xlOff
End With

ActiveSheet.Shapes("Botón 03").Select
With Selection
.Value = xlOff
End With

' Botón Pregunta 2
ActiveSheet.Shapes("Botón 04").Select
With Selection
.Value = xlOff
End With

ActiveSheet.Shapes("Botón 05").Select
With Selection
.Value = xlOff
End With

End Sub

...y listo! Eso era todo.

Supongo que "mi código se puede hacer más simple o más práctico", pero
en lo que a mi respecta, funcionó bien y conseguí mi objetivo.

Gracias a todos y reciban un cordial saludo desde Bogotá.

ElProfe

Preguntas similares