formularios

11/12/2007 - 00:04 por Ray | Informe spam
Hola a todos,

Tal vez sea u poco fácil y no he investigado lo suficiente,
He realizado un documento en word 2003 SP3 en el cuál utilizo un formulario
un poco extenso y con solo 3 tipos de entradas de datos en los cuáles utilizo
estos controles:
-botones de opcion
-campo con texto
-campo de formulario con lista

con el formulario con lista y campo de texto no tengo problema alguno, pero
con los botones de opción he tenido el problema el cuestión, cabe mencionar
que el documento está protegido para que así funcionen los controles.

El problema los botones de opcion no me funcionan si la seguridad de las
macros es alta en la configuración, todo lo demás va bien, alguien sabrá si
es necesario cambiar el nivel a medio (para que funionen los botones de
opción) por que he hecho mil y una pruebas y solo así trabaja muy bien mi
documento, el problema es que a veces mis colegas tienen diferente las
configuraciones en su equipo y una de dos o les manda el mensaje de
advertencia de seguridad cuando esta en medio(seguridad de macros) o no se
ejecuta por estas en alto(seguridad de las macros), a todos muchas gracias
por el tiempo que le puedan dar a ayudarme.

Tks

Preguntas similare

Leer las respuestas

#6 Ray
13/12/2007 - 23:16 | Informe spam
hola Monica,
no se igual no es así o la estoy regando en algo,

Private Sub CheckBox1_Click()
On Error Resume Next

ActiveDocument.Unprotect ("111")

If ActiveDocument.FormFields("CheckBox1").CheckBox.Value = True Then _
ActiveDocument.FormFields("CheckBox2").CheckBox.Value = False
ActiveDocument.FormFields("CheckBox3").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"
End Sub

Private Sub CheckBox2_Click()
On Error Resume Next

ActiveDocument.Unprotect ("111")
If ActiveDocument.FormFields("CheckBox2").CheckBox.Value = True Then _
ActiveDocument.FormFields("CheckBox1").CheckBox.Value = False
ActiveDocument.FormFields("CheckBox3").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"

End Sub

Private Sub CheckBox3_Click()
On Error Resume Next

ActiveDocument.Unprotect ("111")

If ActiveDocument.FormFields("casilla3").CheckBox.Value = True Then _
ActiveDocument.FormFields("casilla1").CheckBox.Value = False
ActiveDocument.FormFields("casilla2").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"
End Sub


Si tienes tiempo espero tu respuesta.

Ah te gusta
"Tux" wrote:

Hola Ray :-)
> Hola Monica,
>
> Bueno, para reemplazar los botones de opción por las casillas
> si activo una casilla , se desactive otra y/o viceversa.
>
> Gracias
>
>
>> » Nothing Else Matters [ Metallica ]
> Muy buena rola...
>

Perdona que me tuve que marchar :-( pero bien aqui te comento :-)

He estado probando el siguiente codigo esta mañana de varias maneras y
la unica manera que funciona las casillas sin fallo alguno es esta que
te pongo a continuacion:
[ ya que he declarado de varias maneras variables por acortar codigo y
me fallaba a la entrada de los campos asi que el siguiente codigo es
largo pero funciona :-) ]

Bien a cada casilla le has de assignar su correspondiente macro,
quedando que para la casilla1 asigmamos la macro [ sub Casilla1] y asi
con el resto de casillas [ yo he puesto tres casillas ok? :-)]

'[]

Sub casilla1()

On Error Resume Next

ActiveDocument.Unprotect ("111")

If ActiveDocument.FormFields("casilla1").CheckBox.Value = True Then _
ActiveDocument.FormFields("casilla2").CheckBox.Value = False
ActiveDocument.FormFields("casilla3").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"

End Sub
'--
Sub casilla2()

On Error Resume Next

ActiveDocument.Unprotect ("111")
If ActiveDocument.FormFields("casilla2").CheckBox.Value = True Then _
ActiveDocument.FormFields("casilla1").CheckBox.Value = False
ActiveDocument.FormFields("casilla3").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"
End Sub
'--

Sub casilla3()

On Error Resume Next

ActiveDocument.Unprotect ("111")

If ActiveDocument.FormFields("casilla3").CheckBox.Value = True Then _
ActiveDocument.FormFields("casilla1").CheckBox.Value = False
ActiveDocument.FormFields("casilla2").CheckBox.Value = False
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True, Password:="111"
End Sub

'[]

La constraseña sera « 111 » pudiendo cambiarla bueno prueba y nos
comentas que por la noche estar por aqui ok? :-)

Y si una impresionante cancion que Metallica comparte con sus oyentes
;-) !! [ tengo una muy buena colección de ellos [ entre otros grupos
buenisimos y variados musicalmente ] muchisimo en Vinillo quedando para
el recuerdo ejejeje :-) y al igual que de Cine una gran coleccion [ que
soy muy cinefila ;-) ]

Gracias Ray y ya comentamos ok? :-)

Saludos
Monica




Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com










Respuesta Responder a este mensaje
#7 Tux
13/12/2007 - 23:41 | Informe spam
Hola Ray :)

hola Monica,
no se igual no es así o la estoy regando en algo,

Private Sub CheckBox1_Click()


Private Sub CheckBox2_Click()


End Sub

Private Sub CheckBox3_Click()

End Sub


Si tienes tiempo espero tu respuesta.

Ah te gusta




Bien espera que te explico veras :-) bien estos campos de formulario
estan en :

Menu » Ver » BArra de herramientas » click en formularios

Una vez sacada esa barra de herramientas, veremos que tenemos un boton
llamado [campo de form. con casilla de verificacion ] bien pues tu
insertas tres en el documento, una vez insertados te situas en el
primero y click derecho del raton, luego veras que ahi puedes asociarle
una macro pues bien asociale la primera perooooo quitale la declaracion
Privada y lo dejas sin declaracion alguna puesto que me da la impresión
que has utilizado los otros campos de casillas de verificacion y esos no
los vamos a utilizar puesto que dan errores varios

Asi pues lo dejamos sin declaracion y si quieres puedes dejar el nombre
de macro y se asocias por ejemplo al primer campo del documetno la macro »

Sub CheckBox1_Click()

y asi con los otros dos y sobre todo marca la casilla » Calcular al
salir bueno de momento prueba eso y prueba y nos comentas :-)

Saludos
Monica

Y sip me gusta :) !!




Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com
Respuesta Responder a este mensaje
#8 Ray
17/12/2007 - 19:39 | Informe spam
Monica,

Muchas gracias, todo muy bien, una última pregunta, hay alguna manera de
pasar por alto el nivel de seguridad de las macros?, esto es para evitar que
se esté cambiando la configuración de cada equipo.

Una vez más muchas gracias.

"Tux" wrote:

Hola Ray :)

> hola Monica,
> no se igual no es así o la estoy regando en algo,
>
> Private Sub CheckBox1_Click()
>
>
> Private Sub CheckBox2_Click()
>
>
> End Sub
>
> Private Sub CheckBox3_Click()
>
> End Sub
>
>
> Si tienes tiempo espero tu respuesta.
>
> Ah te gusta


Bien espera que te explico veras :-) bien estos campos de formulario
estan en :

Menu » Ver » BArra de herramientas » click en formularios

Una vez sacada esa barra de herramientas, veremos que tenemos un boton
llamado [campo de form. con casilla de verificacion ] bien pues tu
insertas tres en el documento, una vez insertados te situas en el
primero y click derecho del raton, luego veras que ahi puedes asociarle
una macro pues bien asociale la primera perooooo quitale la declaracion
Privada y lo dejas sin declaracion alguna puesto que me da la impresión
que has utilizado los otros campos de casillas de verificacion y esos no
los vamos a utilizar puesto que dan errores varios

Asi pues lo dejamos sin declaracion y si quieres puedes dejar el nombre
de macro y se asocias por ejemplo al primer campo del documetno la macro »

Sub CheckBox1_Click()

y asi con los otros dos y sobre todo marca la casilla » Calcular al
salir bueno de momento prueba eso y prueba y nos comentas :-)

Saludos
Monica

Y sip me gusta :) !!




Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com










Respuesta Responder a este mensaje
#9 Tux
18/12/2007 - 23:00 | Informe spam
Ray escribió:
Monica,

Muchas gracias, todo muy bien, una última pregunta, hay alguna manera de
pasar por alto el nivel de seguridad de las macros?, esto es para evitar que
se esté cambiando la configuración de cada equipo.

Una vez más muchas gracias.




Pues puedes crear certificados digitales que dan seguridad, mirate el
siguiente articulo :-)

http://support.microsoft.com/kb/206637/es

Comentanos ok? :-)


Saludos
Monica



Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida