Cargar registro en formulario Access según valor campo subformulario relacionado

He diseñado un formulario principal (formulario de detalle) con varios subformularios relacionados. En el formulario de cabecera muestro los datos personales y de contacto completos de un determinado interesado asociado a un procedimiento. En uno de los subformularios (formulario continuo), relacionado con el principal por el nº de procedimiento, muestro el resto de interesados en el mismo, pero sólo su DNI, nombre y apellidos. Lo que pretendo es que al hacer click en el campo DNI de uno de los interesados (en el subformulario) se actualice la cabecera con sus datos completos. Por cierto, la cabecera contiene un combo independiente de búsqueda por campo DNI.

He probado con un evento al hacer click en el subformulario pero sin éxito (ando verde de visual basic). También asignando valor predeterminado al combo de búsqueda, pero nada.

1 respuesta

Respuesta
1

No sé como pones datos en el subformulario, pero si, con el formulario abierto, escribes algo en el subformulario, yo no lo pondría en el evento Al hacer clic, ya que cuando pongas el cursor en él para escribir, equivale a hacer clic. Pero... supongamos que el formulario se llama Clientes y depende de la tabla Clientes, podrías poner

me.parent.recordsource="select * from clientes where dni='" & me.dni & "'"

Suponiendo que el DNI lo tengas como texto, es decir XXXXXXXXB, si sólo guardas el número

me.parent.recordsource="select * from clientes where dni=" & me.dni & ""

Hola Icue. Muchas gracias por tu atención.

Sobre lo adecuado de poner el evento Al hacer clic, señalar que, tanto el formulario como el subformulario son de "solo consulta". Es decir muestran datos ,que previamente escribo desde otros formularios, a personas que no pueden modificarlos ni añadir nuevos datos.

Dicho ésto, utilizo el código que me proporcionas (la primera línea ya que el DNI es texto) y FUNCIONA! peeero me genera un problema: cuando vuelvo al formulario de cabecera, es decir pongo el curso en cualquiera de sus campos, campo DNI por ejemplo, y trato de hacer una nueva búsqueda (Ctrl B), no encuentra ningún registro salvo los registros que muestra el subformulario. Es como si la instrucción se quedara activada.

Se te ocurre algo. Gracias y un saludo

¿Podrías poner una imagen del formulario y subformulario? Es para hacerme una idea

Hola de nuevo Icue y perdón por la tardanza. No me es posible subir una imagen de los formularios. Lo siento, créeme. Pero se me ocurre otro enfoque: y si incluyo en el subformulario un botón de comando que ejecute una macro. El asunto es que no se crearla pero debería hacer lo siguiente: 

1. copiar el valor campo DNI del registro activo del subformulario (interesados; form. continuo) almacenándolo para utilizarlo después.

2. poner el foco en el formulario de cabecera, en concreto en el combo DNI (combo de búsqueda), y volcar el valor almacenado.

3.  buscar ese valor y mostrar el registro correspondiente.

Gracias de nuevo por tu paciencia.

Si bien no comprendo para que sirve, tu decides. Si tengo un formulario con subformulario

Y hago clic en Antonio Moreno

Al cuadro combinado, le he puesto en sus propiedades-otras-nombre LoQueSea y en el evento Al recibir el enfoque del cuadro de texto NombreCompañia

Me.Parent!LoQueSea = NombreCompañia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas