Al Filtrar un subformulario por un combo desde un formulario el resultado me oculta el formulario

Tengo un formulario1 FORMLISTPACIENTES (lista de pacientes) de tipo continuo que al seleccionar uno de los pacientes me abre un formulario2 FORMCONSULTAS(datos paciente) con los datos de un paciente. Este incluye un subformulario FORMLISTCON (lista de consultas) con todas las consultas realizadas.

Desde el formulario2 FORMCONSULTAS quiero filtrar el resultado del subformulario FORMLISTCON para que me filtre el resultado por el doctor que le atendió mediante un combo del formulario por codigo de doctor con las siguientes intrucciones:

Private Sub CBOselDOCTORES_AfterUpdate()
'vamos a intentar filtrar el subformulario con este cuadro combinado
Me.FORMLISTCON.Form.Filter = "[TAB-CONSULTAS].[DOCTOR] = '" & Me.CBOselDOCTORES.Column(0) & "'"

Me.FORMLISTCON.Form.FilterOn = True
'FORMLISTCON.SetFocus

End Sub

El filtro se ejecuta correctamente pero el problema es que el formulario2 FORMCONSULTAS, queda oculto por el primer formulario que lo llamó, es decir, FORMLISTPACIENTES y el resultado correcto queda detrás.

Entiendo que es alguna instrucción que me falta o quizá las características del formulario.

He probado con setfocus y no he obtenido resultado.

¿Alguien me puede dar una pista?.

Respuesta
1

Prueba lo siguiente: cuando mandes abrir FORMCONSULTAS, dile que lo abra en modo modal, de esta forma se te quedará siempre encima de cualquier otro formulario que tengas abierto. El posible inconveniente es que hasta que no lo cierres no podrás trabajar con otro formulario. Para eso, usa esta expresión:

DoCmd. OpenForm "FORMCONSULTAS",,,,, acDialog

Si tuvieras algún filtro para abrir el formulario, quedaría algo de este estilo:

DoCmd.OpenForm "FORMCONSULTAS",,,"ID=" & Me.ID,,acDialog

Otra opción, sería que pruebes a cambiar las propiedades Emergente y Modal del formulario (Propiedades->Pestaña Otras). Emergente implica que al abrirse lo haga por encima de cualquier otro, pero podrías cambiar de formulario, y Modal implica que mientras no cierres el formulario, no podrás cambiar a otro objeto. Si pones las dos en Sí, obtienes el mismo efecto que abriéndolo por código como acDialog.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas