Abrir formulario filtrado en un cuadro de lista |
Responder
|
| Autor | ||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Tema: Abrir formulario filtrado en un cuadro de listaEnviado: 09/Junio/2025 a las 12:10 |
|
|
Buenas tardes. Tengo un cuadro de lista en un formulario con unos datos, y quisiera que al hacer doble clic sobre uno de los registros del cuadro de lista se abra otro formulario filtrado por ese registro. Lo he intentado de varias maneras pero no lo consigo. ¿Podríais ayudarme? Muchas gracias.
|
||
|
Kara
|
||
![]() |
||
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador
Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14428 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 12:14 |
|
|
Hola bienvenido,
¿qué tal vas de VBA?
|
||
![]() |
||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 18:34 |
|
|
Pues lo tengo bastante oxidado. He estado mirando ejemplos de módulos pero no encuentro nada que se adapte a mí...
|
||
|
Kara
|
||
![]() |
||
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador
Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14428 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 19:33 |
|
|
Pues vamos a ver lo oxidado que lo tienes
:- en el evento doble clic del cuadro de lista - abres el formulario pasándole en el parámetro WhereCondition el valor que quieras (y el código por dónde vas a filtrar) |
||
![]() |
||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 20:20 |
|
|
Sí, eso ya lo tengo. En el cuadro de lista tengo el siguiente evento:
El problema es que ahora no sé cómo decirle que me abra el nuevo formulario cogiendo el valor que he seleccionado en el cuadro de lista. Esa es la parte que no consigo...
|
||
|
Kara
|
||
![]() |
||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 20:21 |
|
|
Perdona que no sé si se ve la imagen. Es esto:
Private Sub ListaIncidencias_DblClick(Cancel As Integer) DoCmd.OpenForm "F_EDICION", , , , , , Me.ListaIncidencias End Sub |
||
|
Kara
|
||
![]() |
||
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador
Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14926 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 09/Junio/2025 a las 22:54 |
|
|
Hola,
Parece que estás utilizando el argumento OpenArgs para pasar el valor de un control llamado ListaIncidencias. Se asume que: - el formulario F_EDICION tiene origen del registro la tabla o una SQL sobre la tabla - el formulario F_EDICION se abre mostrando registros (no es DataEntry) - El campo identificador del registro es IdIncidencias - El campo IdIncidencias es un numérico Opción 1. El WhereCondition (lo que dice Jesús) Es el cuarto argumento del OpenForm y lo debes pasar mas o menos así:
Opción 2. Utilizando el OpenArgs (lo que tienes tú) En el Load del F_EDICION deberás evaluar que estás recibiendo un valor y posicionarte en el registro adecuado. Yo tiraría de RecordsetClone y Bookmark
(todo el código escrito al vuelo) Como podrás observar la Opción 1 es bastante más sencilla. Un saludo
Editado por xavi - 09/Junio/2025 a las 22:55 |
||
![]() |
||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 10/Junio/2025 a las 10:43 |
|
|
Muchas gracias por la respuesta. He probado ambas opciones y no me funciona. Seguiré probando a ver, pero muchas gracias de todas formas...
|
||
|
Kara
|
||
![]() |
||
José Luis Kara
Nuevo
Unido: 09/Junio/2025 Localización: Madrid Estado: Sin conexión Puntos: 11 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 10/Junio/2025 a las 11:19 |
|
|
Hola de nuevo. Finalmente he hecho un poco de mezcla de las 2 opciones y me ha funcionado. Muchísimas gracias por los consejos.
Un saludo,
|
||
|
Kara
|
||
![]() |
||
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador
Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14428 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 10/Junio/2025 a las 15:14 |
|
|
Es una buena costumbre (aunque cueste teclear más) el llamar a los argumentos por nombre, evitan errores y ayudan mucho en el seguimiento y la depuración de procesos.
DoCmd.OpenForm "MiForm", OpenArgs:=Me.Lista DoCmd.OpenForm "MiForm", WhereCondition:="CampoCodigo = " & Me.Lista Editado por Mihura - 10/Junio/2025 a las 15:16 |
||
![]() |
||
Responder
|
|
|
Tweet
|
| Ir al foro | Permisos de foro ![]() Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |