Código botón filtrado subformulario access

Tengo un formulario f1 con un subformulario sf1 (vista de datos), me gustaría poder filtrarlo y me gustaría que fuese: con un cuadro combinado que me muestre los títulos de los registros de la tabla a la que está asociada el sf1, no sé si me explico, si tengo: expedientes, tipo de expediente, inicio de expediente, fin de expediente, como indices de registros en la tabla, esas sean las opciones del cuadro combinado. Una vez elija en el cuadro combinado, hay dos cuadros de texto con dos fechas: fecha inicial y otro fecha final, el filtro me gustaría, poder elegir “inicio expediente” y poner dos fechas en los dos cuadros de texto y que al pulsar el botón (filtrado) solo me muestre en el sf1 los registros filtrados, que se encuentran empezados entre esas dos fechas.

1 respuesta

Respuesta
1

Veremos si consigo explicarme. Supongamos que el combinado, se llama(propiedades-otras-Nombre) Elegir. En sus propiedades-Datos-Tipo origen de la fila pon Lista de valores y en Origen de la fila pon "Expedientes";"Inicio de Expediente";"etc.." Supongamos también que los cuadros de texto de llaman FechaInicio y FechaFin. En las propiedades del cuadro de texto FechaFin, en Eventos-Después de actualizar puedes poner

Select case elegir

case is="Inicio de expediente"

me.sf1.form.recordsource="select * from tablaorigendeSf1 where [inicio de expediente]between forms!f1!fechainicio and forms!f1!fechafin"

case is="tipo de expediente"

Lo que quieres que haga en este caso

...

end select

Estoy suponiendo que los campos de la tabla origen del subformulario se llaman así Inicio de expediente, Tipo de expediente, etc.

Cuadro combinado no me hace nada le doy y es como si no filtrara nada, te dejo el código

Select Case Me.ELEGIR.Value

Case Is = INICIOANALISIS

Me.SHilos1.Form.RecordSource = "SELECT * from [TDatos] where [INICIOANALISIS]between forms!Copia de Hilos!FechaInicio and forms!Copia de Hilos!FechaFin"

End Select...

Si lo has puesto tal como está escrito aquí, tienes que modificar varias cosas

1º en casi is tienes que poner ="Inicioanalisis", o sea entre comillas, ya que este valor es texto

2ºSi el formulario se llama copia de hilos tienes que ponerlo entre corchetes. El inconveniente del código es que cuando un nombre no es todo junto, por ejemplo Nombrecliente, hay que ponerlo, en algunos sitios entre corchetes y en otros entre comillas.

3º Comprueba que en el combinado, el valor de la columna dependiente es la que coge el valor Inicioanalisis

De todas formas, si quieres, repito, si quieres, mándame una copia VACIA de la(s) tabla(s) que intervengan y el formulario y el subformulario a [email protected] y te lo miro y aclaro. Si lo haces, en el asunto del mensaje pon tu alias Iñigo, ya que si no sé quien me escribe, ni los abro.

No mandes la base completa, solo lo que intervenga.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas