Access - Inputs Parameters y cuadros de lista

 
Vista:

Inputs Parameters y cuadros de lista

Publicado por Miki (7 intervenciones) el 09/01/2007 11:13:51
Hola, tengo un problema con Access y SQL os comento:

He creado un formulario para realizar un a búsqueda en la que hay un campo llamado "hab".

Mediante este formulario quiero acceder a otro que tiene un cuadro de lista cuyo origen es un procedimiento almacenado de SQL que necestia una variable de entrada.

Si accedo a ese segundo formulario desde el primero me pide el valor de 'hab' que si lo introduzco manualmente funciona bien, pero no consigo pasárselo directamente para que no me lo pida.

He intentando hacerlo funcionar mediante la opción "Input parameteres" del formulario al cual pertence este cuadro, pero no hay manera, si que me ha funcionado haciendo un formulario con el asistente y rellenando "Input parameteres" con "@hab=[Formularios]![Formulario1]![hab]" lo que pasa es que necesito ponerlo en forma de lista y no tener que ir pasando ficha a ficha.

Muchas gracias de antemano y un saludo a todos.
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 Alejandro

Pasar valor del Formulario 1 al cuadro de lista del Formulario 2 mediante SQL y VBA

Publicado por Alejandro (4142 intervenciones) el 01/08/2023 17:29:01
Para pasar el valor del campo "hab" desde el primer formulario al segundo formulario y evitar que se solicite manualmente al abrir el segundo formulario, puedes utilizar las propiedades del cuadro de lista en el segundo formulario y establecer el valor del parámetro de entrada utilizando VBA (Visual Basic for Applications).

A continuación, te proporciono los pasos para hacerlo:

1. Abre el segundo formulario en modo diseño.
2. Selecciona el cuadro de lista en el segundo formulario para editar sus propiedades.
3. En las propiedades del cuadro de lista, busca la propiedad "Origen de la fila" (Row Source) y asegúrate de que esté configurada para utilizar el procedimiento almacenado de SQL que requiere la variable de entrada. Debe tener una sentencia SQL similar a: `EXEC NombreProcedimientoAlmacenado @hab`.
4. A continuación, busca la propiedad "Parámetros" (Parameters) del cuadro de lista.
5. Establece el valor del parámetro de entrada "hab" utilizando una expresión VBA. Para ello, haz clic en el botón de elipsis ("...") junto a la propiedad "Parámetros" para abrir el generador de expresiones.
6. En el generador de expresiones, ingresa la siguiente expresión VBA para pasar el valor del campo "hab" del primer formulario al parámetro de entrada del cuadro de lista en el segundo formulario:

1
[Formularios]![Formulario1]![hab]

7. Guarda los cambios en el formulario.

Con estos pasos, cuando abras el segundo formulario desde el primer formulario, el valor del campo "hab" se pasará automáticamente al parámetro de entrada del cuadro de lista en el segundo formulario, sin que te lo solicite manualmente.

Recuerda que el nombre del formulario "Formulario1" y el nombre del campo "hab" pueden variar dependiendo de cómo los hayas nombrado en tu base de datos. Asegúrate de ajustar los nombres según corresponda.

Espero que esta solución te ayude a resolver tu problema. ¡Buena suerte!
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