¿Cómo puedo hacer que las opciones del segundo cuadro combinado dependan de lo que elija en el primero?

Teniendo dos cuadros combinados como puedo hacer que las opciones del segundo cuadro combinado dependan de lo que elija en el primer cuadro combinado, es decir que dependiendo de lo que elija en el primer cuadro combinado me tienen que salir en el segundo cuadro las opciones correspondientes a la opción elegida.

1 respuesta

Respuesta
1
El siguiente ejemplo esta basado en la base de datos Northwind.mdb de access 97. También sirve neptuno.mdb.
Nota previa a desarrollar el ejemplo: Observar la existencia del campo CategoryID en la tabla Products, este campo tiene que ser Numérico del tipo Entero Largo, Indexado - Con duplicados y se va a Relacionar con el campo de mismo nombre CategoryID de la tabla Categories, que será Autonumérico - Indexado Sin duplicados. Esta es la forma en que vamos a Relacionar las dos tablas, y se puede definir en la ventana Relaciones o en la misma Consulta qryProductsList.
El Tipo de relación es de Uno a varios, y va del campo CategoryID de la tabla Categories al campo CategoryID de la Tabla Products, se puede exigir también la Integridad referencial.
1. Crear una nueva consulta basada en la tabla Categories y guardarla como qryCategoriesList:
Nombre de campo: CategoryID
Mostrar: Si
Nombre de campo: CategoryName
Mostrar: Si
Orden: Ascendente
2. Crear una nueva consulta basada en la tabla Products y guardarla como qryProductsList:
Nombre de campo: ProductID
Mostrar: Si
Nombre de campo: ProductName
Mostrar: Si
Orden: Ascendente
Nombre de campo: CategoryID
Mostrar: Si
Orden: Ascendente
Criteros: IIF(IsNull([Forms]![frmSelector]![cboCategorySelect]);[CategoryID];[Forms]![frmSelector]![cboCategorySelect])
Nota: al usar la función IIf() and IsNull() en esta consulta se mostrarán todos los productos para el caso de que no se seleccione ninguna categoría.
4. Crear una macro nueva y guardarla como ResetProductSelect:
Macro Name Acción
--------------------------------------
ResetProductSelect NuevaConsulta
IrAControl
Argumentos de la Acción
---------------------------------
NuevaConsulta:
Nombre del control: cboProductSelect
IrAControl:
Nombre del control: cboProductSelect
5. Crear un formulario nuevo con los dos cuadros cuadros combinados y guardarlo
como frmSelector:
Formulario: frmSelector
-----------------------------------
Cuadro combinado:
Nombre: cboCategorySelect
Tipo de origen de la fila: Tabla/Consulta
Origen de la fila: qryCategoriesList
Número de columnas: 2
Ancho de columnas: 0 cm;1 cm
Columna dependiente: 1
Después de actualizar: ResetProductSelect
Cuadro combinado:
Nombre: cboProductSelect
Tipo de origen de la fila: Tabla/Consulta
Origen de la fila: qryProductsList
Número de columnas: 3
Ancho de columnas: 0 cm;1 cm; 0 cm
Columna dependiente: 1
6. Pasar a Vista Formulario. En el cuándo combinado cboCategorySelect, seleccionar una categoría y ver que el otro cuadro combinado cboProductSelect solo lista los productos para esa categoría.
7. En el cuadro combinado cboCategorySelect, seleccionar una categoría diferente y observar que el cuadro combinado cboProductSelect se ha actualizado y lista los productos apropiados para la nueva categoría.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas