Filtrar cuadro de lista por 3 cuadros combinados

Tengo un cuadro de lista (lista74) compuesto por un campo (fechalista) y otro campo (tipo de documento), y la quiero filtrar por 3 cuadros combinados:

El primero es el "mes", el segundo el "año" y el tercero el tipo de documento

1 respuesta

Respuesta
1

Para explicarte he preparado este ejemplo sencillo. Consta de 2 tablas y 1 formulario.

TABLAS

Aunque le asigné el nombre tblCuadroLista lo ideal sería tblDocPorFecha o algo mejor.

FORMULARIO

El formulario consta de: 3 cuadros combinados, 2 botones de comando y 1 cuadro lista.

Para llenar la información de los combo de lista del mes y el año lo hago en el evento Al Abrir del formulario.

Observe que para el combo combinado cboAño inicie con el año 2000 y terminé con el 2050, usted puede cambiar estos valores en el código. El combo combinado cboTipoDoc tiene como origen de la fila la tabla tblTipoDoc.

Ahora viene la parte interesante el cuadro de lista se crea independiente, ya que los datos provienen de una consulta SQL. Debes definirlo en propiedades Datos, Tipo de origen de la fila=Tabla/Consulta, columna dependiente=1, en formato, número de columnas= 2, Ancho de las columnas 2,54 cms; 2,54 cm (El ancho lo puede modificar a su gusto), puede adicionar más propiedades como fondo, color etc.

Ahora para llenar la información del cuadro de lista está el botón Filtrar, tiene el siguiente código en el evento Al hacer Clic.

En el ejemplo falta validar los combos combinados, como limitar los valores a la lista.

Si no puedes adaptarlo me puedes enviar tu correo a [email protected] y te envío el ejemplo.

Se me olvido decirte que también puedes crear una consulta con el diseñador de consultas. Necesitas tener abierto el formulario que contiene los cuadros combinados si usas el generador de expresiones y seleccionas formularios cargados e incluir las 2 tablas.

En la consulta en criterios  en el campo fechalista colocas Month([fechalista])=forms!nombre_formulario.cboMes AND Year([fechalista])=forms!..... AND  [iddoc]=forms!...

Los 2 últimos también hacen referencia a los cuadro de lista del formulario. Debes colocar en los 3 cuadros combinados en el evento Después de Actualizar:

Me. Lstfecha. Requery

Lo hice mediante la segunda opción, es decir, usando una consulta según tus indicaciones y resultó de maravilla.

 ¡Muchas Gracias! por la ayuda

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas