** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Abrir formulario con un criterio en VBA desde un c
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoAbrir formulario con un criterio en VBA desde un c

 Responder Responder
Autor
Mensaje
Javier Pérez Ver desplegable
Nuevo
Nuevo


Unido: 11/Enero/2019
Localización: 29600, Marbella
Estado: Sin conexión
Puntos: 24
Enlace directo a este mensaje Tema: Abrir formulario con un criterio en VBA desde un c
    Enviado: 05/Octubre/2021 a las 09:44
Tengo un formulario llamado "INICIO" con un cuadro combinado "xJefeObra" basado en una consulta "C-OBRAS" donde coge dos campos, 1º “jefesdeobras” de la tabla “JefeObras” y el 2º “obras” de la tabla ”Obras” y quisiera hacer que al seleccionar en el cuadro combinado un jefe de obras me pueda abrir otro formulario "FACTURAS-ENTRADAS" basado en una tabla "FACTURAS" donde existe un campo llamado "Obras" y que me muestre todos los registros que contenga todas las obras de ese Jefe de Obras, hasta ahora lo he conseguido hacer, pero solo me sale todos los registros de la primera obra del jefe de obras y yo quiero que me salga todas las obras del jefe seleccionado. Si es posible os agradecería vuestra ayuda, gracias.
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14720
Enlace directo a este mensaje Enviado: 05/Octubre/2021 a las 19:01
Hola,

¿Y que has hecho para filtrar el formulario que abres?

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
Javier Pérez Ver desplegable
Nuevo
Nuevo


Unido: 11/Enero/2019
Localización: 29600, Marbella
Estado: Sin conexión
Puntos: 24
Enlace directo a este mensaje Enviado: 05/Octubre/2021 a las 19:18
Hola Xavi, gracias por tu interés y tu ayuda, 

en el evento al cambiar del cuadro combinado xJefeObra he puesto el siguiente comando
DoCmd.OpenForm "facturas-entrada", , , "obra= me.xJefeObra "
con esto me abre el formulario Facturas-entrada pero solo los registros que contiene la primera obra del cuadro combinado, yo lo que necesito es que al seleccionar un jefe de obras me pueda abrir el formulario facturas-entrada con todas las obras de ese jefe de obras y no se como hacerlo, se que el procedimiento que estoy utilizando no es correcto pero es que no se hacerlo de otra forma, gracias.
Arriba
Javier Pérez Ver desplegable
Nuevo
Nuevo


Unido: 11/Enero/2019
Localización: 29600, Marbella
Estado: Sin conexión
Puntos: 24
Enlace directo a este mensaje Enviado: 05/Octubre/2021 a las 20:26
Perdona el código es
DoCmd.OpenForm "facturas-entrada", , , "OBRA='" & me.xJefeObra & "'" 

Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14720
Enlace directo a este mensaje Enviado: 05/Octubre/2021 a las 20:37
Hola,

Edito: he tardado tanto en redactar que no he visto tu siguiente mensaje. 

No se si te acabo de entender...

Ese código abrirá el formulario pero el filtro que aplicas es incorrecto ya que filtras por las obras que, literalmente, tengan como valor "me.xJefeObra". Además eso está "definido" como un número ya que no tiene delimitadores de texto ni de fecha.

Como yo lo veo.
En tu formulario tienes un cuadro combinado que (parece) mostrar un listado de jefes de obras y obras (es lo que yo entiendo)

Fulanito Obra1
Fulanito Obra2
Menganito Obra3
Zutanito Obra4

Cuando seleccionas a "Fulanito" quieres que se abra el formulario de facturas filtradas a las obras del jefe de obra "Fulanito"

Para que funcione la tabla Facturas debería tener un jefe de obra. 

Y deberías construir el filtro correctamente
"JefeObra = '" & Me!xJefeObra & "'"
(observa los apostrofes)


Sin tener más claro la estructura de las tablas es complicado dar una respuesta más ajustada.

Un saludo


Editado por xavi - 05/Octubre/2021 a las 20:38
Xavi, un minyó de Terrassa

Mi web
Arriba
LuisR Ver desplegable
Asiduo
Asiduo


Unido: 22/Julio/2013
Localización: España
Estado: Sin conexión
Puntos: 351
Enlace directo a este mensaje Enviado: 06/Octubre/2021 a las 00:27

Buenas, 

creo que abusas de los formularios y que infrautilizas los informes.

.... formulario llamado "INICIO" con un cuadro combinado "xJefeObra" basado en una consulta "C-OBRAS" donde coge dos campos, 1º “jefesdeobras” de la tabla “JefeObras” y el 2º “obras” de la tabla ”Obras” y quisiera hacer que al seleccionar en el cuadro combinado un jefe de obras me pueda abrir UN INFORME "FACTURAS-ENTRADAS" basado en una CONSULTA "FACTURAS" donde existe un campo llamado "Obras" y que me muestre todos los registros que contenga todas las obras de ese Jefe de Obras, .....

Basas el informe en una consulta, en el diseño de la consulta pones un campo "Jefe de Obras" y en criterio escribes =[formularios]![nombredelformulario]![nombredelcuadrocombinado] 
Cuando pulses el botón se te abrirá el informe sólo con los registros de ese Jefe de Obras. 


Puedes editar el informe y generar eventos, al hacer click en cada campo que se abra un formulario con más datos o con la información que quieras editar. 


Arriba
Javier Pérez Ver desplegable
Nuevo
Nuevo


Unido: 11/Enero/2019
Localización: 29600, Marbella
Estado: Sin conexión
Puntos: 24
Enlace directo a este mensaje Enviado: 06/Octubre/2021 a las 12:32
Gracias tanto a Xavi como a Luis, mi problema es que en la tabla de facturas no tengo ningún campo con el jefe de obras, esto solucionaría  todo el problema, ya había barajado esa posibilidad que es mas simple, actualizare la tabla de facturas para incluir el jefe de obras y que cuando genere un nuevo registro me lo añada y pueda filtrarlo mas fácilmente.
Arriba
LuisR Ver desplegable
Asiduo
Asiduo


Unido: 22/Julio/2013
Localización: España
Estado: Sin conexión
Puntos: 351
Enlace directo a este mensaje Enviado: 06/Octubre/2021 a las 15:30
Haz una consulta de referencias cruzadas



Arriba
Javier Pérez Ver desplegable
Nuevo
Nuevo


Unido: 11/Enero/2019
Localización: 29600, Marbella
Estado: Sin conexión
Puntos: 24
Enlace directo a este mensaje Enviado: 06/Octubre/2021 a las 16:05
Gracias Luis, pero he optado por añadir el campo Jefe de obras a la tabla facturas, un saludo
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable