Imprimir página | Cerrar ventana

Subformulario con distinto origen

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=84975
Fecha de impresión: 27/Marzo/2026 a las 06:03


Tema: Subformulario con distinto origen
Publicado por: Nomada
Asunto: Subformulario con distinto origen
Fecha de publicación: 29/Enero/2020 a las 08:56
Buenas.
Como puedo cambiar el Origen de datos (Source) de un subformulario al abrir su formulario.
Mediante el siguiente código, el origen del subformulario "Secundario" puede ser Sub_Form1 o Sub_Form2 dependiendo del valor de A:

If A=1 then
Me.Secundario.SourceObject = "Sub_Form1"
else
Me.Secundario.SourceObject = "Sub_Form2"
end if

Pero en mi caso solo tengo un Sub_Form1, el cual deseo que su origen cambie, no cargue un subformulario u otro, sino que el único subformulario cambie su origen.

No se si me abre explicado bien.
Muchas gracias y saludos.



Respuestas:
Publicado por: xavi
Fecha de publicación: 29/Enero/2020 a las 09:52
Hola,

Explicarte, te has explicado. Lo que no se es si yo te he entendido...

Hay que distinguir entre el objeto origen  y el origen de los datos.
El primero es la propiedad SourceObject del control subformulario mientras que el segundo es la propiedad RecordSource el Form contenido en el control subformulario.

Para cambiar el objeto origen, el código que has puesto es el adecuado (a lo mejor faltaría los nombres de los campos que establecen la relación).
Para cambiar el segundo se hace invocando el Recordsource:

Me!sfrDatos.Form.RecordSource = "SELECT bla, bla, bla..."

Un saludo


-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web


Publicado por: Nomada
Fecha de publicación: 29/Enero/2020 a las 17:43
Gracias Xavi.
A la perfección. Otra cosita aprendida.
Este hilo se puede cerrar satisfactoriamente.
Saludos



Imprimir página | Cerrar ventana