Pregunta Casilla verificacion

07/04/2009 - 16:38 por Juan Carlos | Informe spam
Hola, me sucede lo siguiente :
Tengo una hoja en la que hay diez casillas de verificacion y estarán ocultas
salvo una cantidad que va a estar en una casilla, por ejemplo, A1.
O sea, tengo checkbox1, checkbox2, etc y si A1 es 4, habra hasta checkbox4.
Lo que quiero hacer es ponerle a esas casillas un texto que tengo idea de
como hacerlo (ActiveSheet.Shapes(Checkbox1).Select: Selection.Characters.Text
= "nombre")
El problema es que me aperece un error 424 y dice "Se requiere un objeto".
Alguien me puede decir que es lo que pasa?

Gracias
JC

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
07/04/2009 - 21:08 | Informe spam
hola, Juan Carlos !

Tengo una hoja en la que hay diez casillas de verificacion y estaran ocultas
salvo una cantidad que va a estar en una casilla, por ejemplo, A1.
O sea, tengo checkbox1, checkbox2, etc y si A1 es 4, habra hasta checkbox4.
Lo que quiero hacer es ponerle a esas casillas un texto que tengo idea de como hacerlo
(ActiveSheet.Shapes(Checkbox1).Select: Selection.Characters.Text = "nombre")
El problema es que me aperece un error 424 y dice "Se requiere un objeto".
Alguien me puede decir que es lo que pasa?



asumiendo que la parte de ocultar/mostrar n_controles segun el numero que pongas en A1 ya lo tienes resuelto (???)

1) si vas a usar la coleccion "Shapes" deberas indicar a cual objeto incrustado te refieres...
o bien, usando el numero de indice del control dentro de la coleccion de objetos: Shapes(2)
o bien, usando el nombre del control delimitado por comillas dobles: Shapes("checkbox1")

2) dependiendo del tipo de control que hayas insertado en la hoja (formularios o barra de controles -ActiveX-)

a) si es de formularios, el control (en si mismo) NO tiene la propiedad "Characters", lo tiene su pariente "TextFrame"
y (generalmente) el nombre lleva espacios en el tipo de control (p.e. "Check Box 1")
para estos la instruccion seria +/- asi: -> ActiveSheet.Shapes("check box 1").TextFrame.Characters.Text = "abc"

b) si es de cuadro de controles, no tiene la propiedad "Characters.Text", sino la propiedad "Caption"
y su referencia es diferente, aqui estas hablando de objetos OLE (Object Linking and Embedding)
para estos casos la instruccion seria +/- asi: -> ActiveSheet.OLEObjects("checkbox1").Object.Caption = "xyz"

saludos,
hector.
Respuesta Responder a este mensaje
#2 Juan Carlos
08/04/2009 - 13:45 | Informe spam
Muchas gracias Hector, me sirvio mucho tu respuesta

JC
"Héctor Miguel" escribió:

hola, Juan Carlos !

> Tengo una hoja en la que hay diez casillas de verificacion y estaran ocultas
> salvo una cantidad que va a estar en una casilla, por ejemplo, A1.
> O sea, tengo checkbox1, checkbox2, etc y si A1 es 4, habra hasta checkbox4.
> Lo que quiero hacer es ponerle a esas casillas un texto que tengo idea de como hacerlo
> (ActiveSheet.Shapes(Checkbox1).Select: Selection.Characters.Text = "nombre")
> El problema es que me aperece un error 424 y dice "Se requiere un objeto".
> Alguien me puede decir que es lo que pasa?

asumiendo que la parte de ocultar/mostrar n_controles segun el numero que pongas en A1 ya lo tienes resuelto (???)

1) si vas a usar la coleccion "Shapes" deberas indicar a cual objeto incrustado te refieres...
o bien, usando el numero de indice del control dentro de la coleccion de objetos: Shapes(2)
o bien, usando el nombre del control delimitado por comillas dobles: Shapes("checkbox1")

2) dependiendo del tipo de control que hayas insertado en la hoja (formularios o barra de controles -ActiveX-)

a) si es de formularios, el control (en si mismo) NO tiene la propiedad "Characters", lo tiene su pariente "TextFrame"
y (generalmente) el nombre lleva espacios en el tipo de control (p.e. "Check Box 1")
para estos la instruccion seria +/- asi: -> ActiveSheet.Shapes("check box 1").TextFrame.Characters.Text = "abc"

b) si es de cuadro de controles, no tiene la propiedad "Characters.Text", sino la propiedad "Caption"
y su referencia es diferente, aqui estas hablando de objetos OLE (Object Linking and Embedding)
para estos casos la instruccion seria +/- asi: -> ActiveSheet.OLEObjects("checkbox1").Object.Caption = "xyz"

saludos,
hector.



Respuesta Responder a este mensaje
#3 Blanca Letycia
18/04/2009 - 22:10 | Informe spam
saludos
"Héctor Miguel" escribió en el mensaje
news:e5d%
hola, Juan Carlos !

Tengo una hoja en la que hay diez casillas de verificacion y estaran
ocultas
salvo una cantidad que va a estar en una casilla, por ejemplo, A1.
O sea, tengo checkbox1, checkbox2, etc y si A1 es 4, habra hasta
checkbox4.
Lo que quiero hacer es ponerle a esas casillas un texto que tengo idea de
como hacerlo
(ActiveSheet.Shapes(Checkbox1).Select: Selection.Characters.Text =
"nombre")
El problema es que me aperece un error 424 y dice "Se requiere un
objeto".
Alguien me puede decir que es lo que pasa?



asumiendo que la parte de ocultar/mostrar n_controles segun el numero que
pongas en A1 ya lo tienes resuelto (???)

1) si vas a usar la coleccion "Shapes" deberas indicar a cual objeto
incrustado te refieres...
o bien, usando el numero de indice del control dentro de la coleccion
de objetos: Shapes(2)
o bien, usando el nombre del control delimitado por comillas dobles:
Shapes("checkbox1")

2) dependiendo del tipo de control que hayas insertado en la hoja
(formularios o barra de controles -ActiveX-)

a) si es de formularios, el control (en si mismo) NO tiene la propiedad
"Characters", lo tiene su pariente "TextFrame"
y (generalmente) el nombre lleva espacios en el tipo de control
(p.e. "Check Box 1")
para estos la instruccion seria +/- asi: ->
ActiveSheet.Shapes("check box 1").TextFrame.Characters.Text = "abc"

b) si es de cuadro de controles, no tiene la propiedad
"Characters.Text", sino la propiedad "Caption"
y su referencia es diferente, aqui estas hablando de objetos OLE
(Object Linking and Embedding)
para estos casos la instruccion seria +/- asi: ->
ActiveSheet.OLEObjects("checkbox1").Object.Caption = "xyz"

saludos,
hector.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida