Recorrer Grupo de opciones

06/06/2007 - 13:39 por marjan | Informe spam
Hola de nuevo,

Estoy intentando recorrer una serie de Grupos con Botones de opción para
asignar automáticamente la celda donde guardar el valor, Tengo 2 grupos con
tres botones cada uno, hago

Dim k As Long
Dim conta As Long
Dim conta2 As Long
conta = 1
conta2 = 4

For k = 1 To ActiveSheet.OptionButtons.Count
ActiveSheet.OptionButtons(conta).LinkedCell = "$A$" & conta2
conta = conta + 1
conta2 = conta2 + 1
Next k

Esto recorre los botones de opción (6) y asigna la celda enlazada (a 6
celdas), pero a mi me interesa que lo haga por cada grupo de opciones (solo
serían 2 celdas)
¿Cómo "detecto" a que Grupo pertenece cada opción para que cuando cambie
ponga un valor de celda nuevo?

Y otra:

El valor en el bucle ["$A$" & conta2] me asigna los valores verticalmente...
¿cómo podría hacerlo en una sola fila (horizontalmente)


Gracias por vuesta ayuda,

Martí

Preguntas similare

Leer las respuestas

#1 Vinchenzo vinç
06/06/2007 - 20:27 | Informe spam
"marjan" <de hotmail : centralbib> escribió en el mensaje news:
Hola de nuevo,

Estoy intentando recorrer una serie de Grupos con Botones de opción para
asignar automáticamente la celda donde guardar el valor, Tengo 2 grupos con
tres botones cada uno, hago

[···]

Esto recorre los botones de opción (6) y asigna la celda enlazada (a 6
celdas), pero a mi me interesa que lo haga por cada grupo de opciones (solo
serían 2 celdas)
¿Cómo "detecto" a que Grupo pertenece cada opción para que cuando cambie
ponga un valor de celda nuevo?

Y otra:

El valor en el bucle ["$A$" & conta2] me asigna los valores verticalmente...
¿cómo podría hacerlo en una sola fila (horizontalmente)



Hola,
en principio, yo no conozco una forma de acceso directo a los controles que pertenezcan a un determinado cuadro de grupo, pero sí al grupo al que pertenece un determinado botón de opción.

Prueba la siguiente macro. Cabe decir que tendrás que procurarle un control de errores por si pudiera darse el caso en el que algún botón de opción no esté agrupado por un cuadro de grupo, sino por la hoja, en cuyo caso obtendrías un error al consultar la propiedad '.GroupBox' del botón de opción:

'**************
Dim x As Long, i As Long

With Sheets("NombreHoja")
For i = 1 To .GroupBoxes.Count
For x = 1 To .OptionButtons.Count
If .OptionButtons(x).GroupBox.Name = .GroupBoxes(i).Name Then
.OptionButtons(x).LinkedCell = Cells(1, i).Address
Exit For
End If
Next
Next
End With
'**************

Creo que se ve claro lo que hace la macro, sino ya comentarás...


Saludos
( ! ) Respuestas precedentes en Google:
http://groups.google.com/group/micr...c.es.excel
( i ) Temperancia en el foro:
http://support.microsoft.com/defaul...newsreglas
Respuesta Responder a este mensaje
#2 marjan
07/06/2007 - 10:58 | Informe spam
VA PERFECTO !!! GRACIAS !!!

Eres un génio !

Saludos,

Martí




"Vinchenzo vinç" <Vinç@newsgroup.nospam> ha escrit en el missatge dels grups
de discussió:
"marjan" <de hotmail : centralbib> escribió en el mensaje
news:
Hola de nuevo,

Estoy intentando recorrer una serie de Grupos con Botones de opción para
asignar automáticamente la celda donde guardar el valor, Tengo 2 grupos
con
tres botones cada uno, hago

[···]

Esto recorre los botones de opción (6) y asigna la celda enlazada (a 6
celdas), pero a mi me interesa que lo haga por cada grupo de opciones
(solo
serían 2 celdas)
¿Cómo "detecto" a que Grupo pertenece cada opción para que cuando cambie
ponga un valor de celda nuevo?

Y otra:

El valor en el bucle ["$A$" & conta2] me asigna los valores
verticalmente...
¿cómo podría hacerlo en una sola fila (horizontalmente)



Hola,
en principio, yo no conozco una forma de acceso directo a los controles
que pertenezcan a un determinado cuadro de grupo, pero sí al grupo al que
pertenece un determinado botón de opción.

Prueba la siguiente macro. Cabe decir que tendrás que procurarle un
control de errores por si pudiera darse el caso en el que algún botón de
opción no esté agrupado por un cuadro de grupo, sino por la hoja, en cuyo
caso obtendrías un error al consultar la propiedad '.GroupBox' del botón de
opción:

'**************
Dim x As Long, i As Long

With Sheets("NombreHoja")
For i = 1 To .GroupBoxes.Count
For x = 1 To .OptionButtons.Count
If .OptionButtons(x).GroupBox.Name = .GroupBoxes(i).Name Then
.OptionButtons(x).LinkedCell = Cells(1, i).Address
Exit For
End If
Next
Next
End With
'**************

Creo que se ve claro lo que hace la macro, sino ya comentarás...


Saludos
( ! ) Respuestas precedentes en Google:
http://groups.google.com/group/micr...c.es.excel
( i ) Temperancia en el foro:
http://support.microsoft.com/defaul...newsreglas
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida