Visual Basic - EJECUTAR UN PROCEDIMIENTO AL ABRIR FORMULARIO EN ACCESS

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

EJECUTAR UN PROCEDIMIENTO AL ABRIR FORMULARIO EN ACCESS

Publicado por laura (19 intervenciones) el 11/11/2014 00:14:02
HOLA BUEN DIA.

ESTOY HACIENDO UNA BASE DE DATOS EN LA CUAL TENFO UN FORMULARIO Y EN ESTE TENGO UN CUADRO DE LISTA(LLAMADO "CIUDAD") CON VARIAS OPCIONES("CIUDAD1", "CIUDAD2", "CIUDAD3" ETC) AL ELEGIR UNA OPCION SE DESACTIVAN OTROS CAMPOS, MI PROBLEMA ES QUE AL ABRIR EL FORMULARIO TODOS LOS CAMPOS ESTAN ACTIVOS; ES DECIR AL YO ELEGIR UNA OPCION TIENE QUE DESACTIVARSE UNOS CAMPOS Y SI FUNCIONA MIENTRAS ESTA ABIERTO EL FORMULARIO, PERO AL CERRAR Y ABRIR NUEVAMENTE EL FORMULARIO LOS CAMPOS QUE DEBERIAN ESTAR DESHABILIDATOS ESTAC HABILITADOS. INTENTE PONER MI PROCEDIMIENTO EN EL FOMR_LOAD PERO NO SE PUEDE, ESPERO Y ME PUEDAN AYUDAR A RESOLVER MI PROBLEMA

GRACIAS :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de andres guerrero
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

EJECUTAR UN PROCEDIMIENTO AL ABRIR FORMULARIO EN ACCESS

Publicado por andres guerrero (1798 intervenciones) el 11/11/2014 03:09:52
Crea un procedimiento para inactivar los controles

llamalo en el form load ... creo que eso podria ayudar-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

EJECUTAR UN PROCEDIMIENTO AL ABRIR FORMULARIO EN ACCESS

Publicado por laura (19 intervenciones) el 11/11/2014 16:37:51
hola muchas gracias por responder lo que pasa es que soy nueva en access y no se como llamar mi procedimiento en el form load. este es el codigo que tengo:

PRIVATE SUB CIUDAD_CHANGE()
IF ME.CIUDAD.TEXT="CIUDAD1" THEN
ME.CAMPO1.ENABLED=FALSE
ELSE
ME..CAMPO1.ENABLED=TRUE
END IF
END SUB

"ESTE PROCEDIMIENTO FUNCIONA MIENTRAS ESTA ABIERTO EL FORMULARIO, PERO CUANDO LO CIERRO Y LO VUELVO ABRIR EL CAMPO QUE DEBERIA ESTAR DESHABILITADO ESTA HABILITADO. Y NO SE COMO LLAMAR MI PROCEDIMIENTO EN EL FORM LOAD :( OJALA ME PUEDAS AYUDAR
GRACIAS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

EJECUTAR UN PROCEDIMIENTO AL ABRIR FORMULARIO EN ACCESS

Publicado por Hernan (4 intervenciones) el 15/11/2014 01:05:53
Hola. Manejo mucho los combo box así que espero poder ayudarte.

En el Form_Load() escribí los campos que queres que aparezcan deshabilitados o invisibles, escribiendo nombredelcampo.enabled = false o nombredelcampo.visible = false

Eso al abrir el formulario va a hacer que no se vea el campo si usaste la propiedad .visible, o inhabilitado si usaste .enabled

Ahora, yo uso siempre el AfterUpdate() del campo que da la orden, en lugar del Change(). Así que por ejemplo con lo poco que tengo de info lo haría así:

Private sub ciudad_AfterUpdate()
'Declaras una variable que almacene el valor del campo ciudad
Dim laciudad as string ' si es que usas el valor como texto. Sino lo defines como integer, o sea dim laciudad as integer
'Asignas el valor a la variable
laciudad = me.ciudad
'Eliges el caso que se almacena en la variable laciudad.
SELECT CASE laciudad
Case "CIUDAD1"
me.campo1.visible = true
me.campo2.visible = false
me.campo3.visible = false
Case "CIUDAD2"
me.campo1.visible = false
me.campo2.visible = true
me.campo3.visible = false
Case "CIUDAD3"
me.campo1.visible = false
me.campo2.visible = false
me.campo3.visible = true
END SELECT

End Sub

Tene en cuenta que lo hice todo de memoria sin hacer la prueba. Lo único que te remarco como te remarque arriba lo de la variable, que si es numero es integer y si es texto es string, es lo siguiente.
En el SELECT CASE en lugar de escribir Case "CIUDAD1" etc. escribis Case 1, Case 2, etc., según el número que identifica a la ciudad.

Cualquier consulta a tu disposición.


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar