Uso del cuadro combinado en consulta de access

Necesito saber como realizar una consulta utilizando un cuadro combinado.
Tengo una tabla de empresas, con el campo de tamaño de la empresa (grande, pequeña, mediana, micro) ya hice una consulta con los datos de la empresa (consulta_empresa). Quisiera que a través de un formulario yo pueda insertar un cuadro combinada, y seleccione el tamaño de la empresa y que en un subformulario me aparezca los resultados del criterio del cuadro combinado. Ejemplo: si elegí del cuadro combinado "micro" en el subformulario me aparezcan los datos de la empresa relacionado con ese criterio (supongo que haciendo uso de la consulta que ya tenía hecha) solo que no escojo por medio de los [ ] sino por medio del cuadro combinado.
Y que a su vez si yo selecciono del cuadro combinado varias opciones, se vaya refrescando la información.

4 respuestas

Respuesta
1
Si quieres pásame tu BD para ayudarte con tu problema
[email protected]
Respuesta
1
Te creas un cuadro combinado que llamaremos selEmpresa, en Origen de la fila pones:
Select TamañoEmpresa from Empresas group by TamañoEmpresas order by Tamaño Empresas
TamañoEmpresas es el campo de la tabla Empresas donde tienes el tamaño de la empresa.
En la acción Al hacer clic ---> Procedimiento de Evento ---> Me. Refresh
Después, para hacer referencia (en la consulta o donde quieras) al valor del cuadro combinado elegido será:
Form!selEmpresa.Value
Muchas gracias por su respuesta, pero me queda una duda:
- La primera parte de insertar el cuadro combinado con el origen de fila está muy bien. Yo inserto el cuadro combinado en una formulario llamado "frmcboTamañoEmpresa", pero a la hora de seleccionar cualquier opción de este combo, ¿cómo me sale la parte de la consulta?, que es donde quiero insertar en un subformulario (es decir, asociar cuadro combinado con subformulario)
No puedo hacer conexión con el cuadro combinado, yo tengo un diseño formulario con el resumen de la consulta (frmConsultaTamaño) pero ahora quería usar el cuadro combinado para hacer el [ ] del criterio, esta es la parte que no me sale.
Le agradecería la ayuda, saludos
Supongo que cuando dices el [] quieres decir que la consulta tiene un parámetro y lo que quieres es sustituir ese parámetro por el valor del cuadro combinado. Si es así supongamos que el campo que quieres comparar en criterios se llama Empresa y que antes hacías: Empresa=[Introducir Empresa], bien, para sustituir el parámetro Introducir Empresa por el valor del cuadro combinado tendrías que poner:
Empresa='" & Form!selEmpresa.Value & "'
Esto si el campo Empresa es de texto, si es numérico quitarías las ' que son el delimitador de texto, pondrías:
Empresa=" & Form!selEmpresa.Value & "
Me cuentas.
Gracias Angeles,
si eso fue lo que hice en principio, en el criterio de mi consulta en el campo "TamañoEmpresa" (que es el valor que busco)puse
[qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor] (Esta en español)
donde "qry frmConsulta x Tamaño Empresa" es el formulario que tiene mi cuadro combinado, el "selEmpresa" es el nombre del cuadro combinado, pero no me sale.
También lo puse así:
"tipoempresa"="" & [formulario]![selEmpresa].[valor] & ""
Y así:
[formulario]![selEmpresa].[valor]
Pero ninguno me funcionó. El uso de los parantesis cuadrado es [Mensaje], no se pone el nombre del campo no se si tendrá que ver con eso.
Gracias.
No entiendo lo que no se pone el nombre del campo...
¿Puedes copiar y pegar la sql?
Me cuentas, Angeles
Este es el comando SQL
SELECT Empresa.NombreEmpresa, Empresa.SectorProductivo, Empresa.Actividad, Empresa.TipoEmpresa, Empresa.Provincia
FROM Empresa
WHERE (((Empresa.TipoEmpresa)=[qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor]));
El formulario lo tienes que referir a la colección Forms, es decir, si tienes el cuadro combinado en el formulario, no tienes que poner el nombre de este formulario y el cuadro combinado lo referirás al objeto Form de forma: [Form]![selEmpresa].Value, pero si quieres poner el nombre del formulario en el que está el cuadro combinado entonces lo tienes que referir a la colección [Forms]![qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor]
Creo que va por ahí el asunto.
Me cuentas, Angeles
Hola, Angeles
Así he puesto la consulta, pero solo me sala una caja de diálogo que dice "introduzca el valor del parámetro", como cuando se usa los parentisis cuadrados [].
Yo lo que quería es que me saliera el cuadro combinado, selecciono la opción y me da la consulta (con los datos que ya selecciono del cuadro combinado.
Te muestro el SQL según tu recomendación:
SELECT Empresa.NombreEmpresa, Empresa.SectorProductivo, Empresa.Actividad, Empresa.TipoEmpresa, Empresa.Provincia
FROM Empresa
WHERE (((Empresa.TipoEmpresa)=[Formulario]![qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor]));
Ahora me queda una duda, ¿si me dices que el cuadro está en un formulario? ¿En qué otro lugar podría poner ese cuadro combinado?
Gracias, Coki
El cuadro combinado podría estar en otro formulario, supone que tienes un formulario y mediante un botón abres otro y en este otro quieres utilizar el valor del cuadro combinado del formulario anterior, entonces si tendrías que poner el nombre de ese formulario.
¿Has puesto las comillas y el & de unión?
'" & Formulario]![qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor] & "'
Otra cosa, para tener el valor del cuadro combinado en sus propiedades en la acción Al hacer clic tendrás que poner Procedimiento de evento ---> Me. Refresh
Si no es esto, no se que puede ser. Si no te funciona, si quieres, me mandas la BD (en access 2003) para echarla un vistazo y ver que puede ser.
Otra cosa, si pones el nombre del formulario tendrás que referirlo a su colección Formularios:
'" & [Formularios]![qry frmConsulta x Tamaño Empresa]![selEmpresa].[valor] & "'
Si lo refieres al objeto:
'" & [Formulario]![selEmpresa].[valor] & "'
Respuesta
1
¿Entonces lo que ud necesita es por ejemplo que al escoger en el desplegable micro le aparezcan los datos de la empresa?
Ud lo que tiene que hacer es, en la consulta de la que parte el subformulario, el campo empresa, donde aparece grande, pequeña, mediana, micro, etc... igualarlo al campo empresa del formulario principal.
A continuación en el campo empresa puede añadir un evento después de actualizar, o al perder el enfoque escribir el siguiente código en la opción Generador de Código:
Me.NombreDelSubformulario. Requery
Este cógigo sirve para que se vaya refrescando la información, dependiendo la opción que elija en el desplegable.
Respuesta
1
Lo que tienes que hacer es que el campo de la consulta donde tienes guardado el valor del tamaño de la empresa sea igual al valor del cuadro combinado del formulario.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas