Discussion:
Cuadro combinado con lista valores dependiendo del valor de otro c
(demasiado antiguo para responder)
javier
2009-06-08 12:17:01 UTC
Permalink
Raw Message
Saludos a todos:

En un campo de una tabla llamado [ Zona ] puedo introducir valores que elijo
y que están en otra Tabla. Es decir mediante un Cuadro combinado elijo los
valores "Norte", "Sur", "Este" y "oeste".
Para ello en la vista Diseño de la tabla usé el "Asistente para búsquedas..."

La cuestión es que a continuación tengo otro campo llamado [ Regiones ] y
también quería tener un Cuadro combinado, y así según el valor elegido
anteriormente (en el campo anterior) debería mostrame una lista de valores.
Por ejemplo si he elejido la Zona "Norte" debe mostrarme para elegir 5
Regiones que tengo en la zona Norte, pero si elijo la Zona "Sur" deberá
mostrame 7 regiones distintas que pertenecen a la zona Sur. Y así
sucesivamente.


Pues esa es la cuestión. ¿Sabeis cómo se hace esto?. Soy bastante nuevo en
Access.

Muchas gracias.
Un saludo.
Patxi Sanz
2009-06-08 14:53:38 UTC
Permalink
Raw Message
Hola Javier:

Revisa el ejemplo sobre cuadros combinados del maestro Chea:

- http://jbengoechea.com/RptCp.htm#combos
--
Un saludo,


Patxi Sanz
Tudela (NA)
javier
2009-06-08 21:44:01 UTC
Permalink
Raw Message
Gracias Patxi.

Estaba mirando esos ejemplos de

http://jbengoechea.com/RptCp.htm#combos

Pero creo que no me funciona bien. Me pide que intrduzca un parámetro...,
despues no me aparece una lista de valores filtrados en el segundo cuadro
combinado. Lo que yo buscaba es muy simple pero esos ejemplos son para mi un
laberinto. No sé como están plateados y no los sé manejar, no los consigo
entender. Me pierdo.


¿Te importaría por favor mandarme algún ejemplo? Yo utlizo Access 2003. Creo
que con sólo ver un ejemplo sencillo lo entenderé.

Mi correo es el siguiente:
***@yahoo.es


Muchas gracias.
Recibe un saludo.
Post by Patxi Sanz
- http://jbengoechea.com/RptCp.htm#combos
--
Un saludo,
Patxi Sanz
Tudela (NA)
Patxi Sanz
2009-06-09 15:03:34 UTC
Permalink
Raw Message
Más simple que los ejemplos de Chea, no sé :-(

La teoría de los cuadros combinados cuya lista se basa en otro cuadro
combinado (cuadros combinados en cascada), es sencilla: se trata de cambiar
la propiedad Origen de la fila del segundo cuadro combinado cada vez que se
selecciona un elemento en el primer cuadro combinado.

Por ejemplo, supongamos que tenemos 2 cuadros combinados:

- Combo1
- Combo2

El primer cuadro combinado (Combo1), tiene una única columna con los
siguientes datos:

"Norte"
"Sur"
"Este"
"Oeste"

Y queremos que el segundo cuadro combinado (Combo2) actualice su lista según
lo seleccionado en el Combo1. Y que esa lista se va a basar en la tabla
Regiones, que tiene un campo llamado Region, que es el que vamos a mostrar,
y otro campo llamado ZonaRegion, que es por el que vamos a filtrar.

Así, podemos indicar en el evento Después de Actualizar del Combo1 que
modifique la lista del Combo2:

Private Sub Combo1_AfterUpdate()
Me.Combo2.RowSource = "SELECT Region FROM Regiones WHERE ZonaRegion ='"
& Me.Combo1 & "';"
End Sub

Esta es la base: modificar la sentencia SQL o consulta a usar en el Combo2
cada vez que se modifique el Combo1. Y como siempre, se pueden agregar más
cosas:

- Que se modifique la lista cada vez que cambiemos de registro.
- Si se modifica la lista y el elemento que había en el Combo2 no existe
ahora, eliminar el texto mostrado.
- ...

Además de en la web del maestro Chea, hay más información sobre los cuadros
combinados en cascada en el grupo.
--
Un saludo,


Patxi Sanz
Tudela (NA)
javier
2009-06-09 20:34:01 UTC
Permalink
Raw Message
Muchísimas gracias Patxi, he conseguido hacerlo siguiendo tus indicaciones.

Para ello uilicé 2 tablas y un formulario con dos combos.

Y con ese [Procedimiento de evento] que me dejaste, y esas consultas que van
en el "Origen de fila" del Combo1 y Combo2, me funcionó muy bien.


¿Pero sabes si se podría hacer lo mismo en una Tabla?. Es decir no con
Combos en cascada en un formulario sino con Cuadros combinados en cascada en
una Tabla. El 1er cuadro combinado si lo sé hacer, pero el segundo que
depende del primero y que debería actualizarse, he pensado que quizá se
conseguiría con alguna Consulta que se introduciría en el diseño de la Tabla,
en pestaña "Busqueda", en "Tipo de origen de la fila" se pondría
Tabla/Consulta; y en "Origen de la fila" deberá tener alguna consulta. No sé
si se podrá hacer, se debería actualizar según lo que se introduzca en el
1er cuadro combinado. No se si a la tabla se le puede meter algún
[Procedimiento de evento] como el que puse en en Combo1 del formulario.


Me gustaría conocer tu opinión.
Muchas gracias por tu ayuda.
Recibe un saludo.

----------------------------------
Post by Patxi Sanz
Más simple que los ejemplos de Chea, no sé :-(
La teoría de los cuadros combinados cuya lista se basa en otro cuadro
combinado (cuadros combinados en cascada), es sencilla: se trata de cambiar
la propiedad Origen de la fila del segundo cuadro combinado cada vez que se
selecciona un elemento en el primer cuadro combinado.
- Combo1
- Combo2
El primer cuadro combinado (Combo1), tiene una única columna con los
"Norte"
"Sur"
"Este"
"Oeste"
Y queremos que el segundo cuadro combinado (Combo2) actualice su lista según
lo seleccionado en el Combo1. Y que esa lista se va a basar en la tabla
Regiones, que tiene un campo llamado Region, que es el que vamos a mostrar,
y otro campo llamado ZonaRegion, que es por el que vamos a filtrar.
Así, podemos indicar en el evento Después de Actualizar del Combo1 que
Private Sub Combo1_AfterUpdate()
Me.Combo2.RowSource = "SELECT Region FROM Regiones WHERE ZonaRegion ='"
& Me.Combo1 & "';"
End Sub
Esta es la base: modificar la sentencia SQL o consulta a usar en el Combo2
cada vez que se modifique el Combo1. Y como siempre, se pueden agregar más
- Que se modifique la lista cada vez que cambiemos de registro.
- Si se modifica la lista y el elemento que había en el Combo2 no existe
ahora, eliminar el texto mostrado.
- ...
Además de en la web del maestro Chea, hay más información sobre los cuadros
combinados en cascada en el grupo.
--
Un saludo,
Patxi Sanz
Tudela (NA)
Patxi Sanz
2009-06-10 14:41:40 UTC
Permalink
Raw Message
De momento, Access no permite que tengamos eventos en las tablas. Así que
nos tenemos que limitar a los formularios e informes para hacer este tipo de
cosas.
--
Un saludo,


Patxi Sanz
Tudela (NA)
javier
2009-06-10 18:41:01 UTC
Permalink
Raw Message
Pero quizás con algún código en algún Módulo para que actualice una Consulta
(y filtre los valores que correspondan) en cada registro activo de la Tabla,
y al cambiar el valor del 1er Cuadro combinado... ¿crees que de esa manea se
podría hacer?

He vito cosas tan inverosimiles en Access, que me parece que esto no debe
ser muy complicado.
¿Has visto algún ejemplo parecido a éste?


Muchas gracias.
Un saludo.
Patxi Sanz
2009-06-11 15:34:42 UTC
Permalink
Raw Message
Que yo sepa, no se puede hacer porque no puedes obtener el valor qque hay en
el campo y que se necesita para poder filtrar la consulta que alimenta al
cuadro combinado.

Además, no es aconsejable que el usuario entre directamente a las tablas,
porque puede hacer cosas que no queramos. Es preferible que trabaje con
formularios, ys que estos objetos dan muchas más posibilidades de control.
--
Un saludo,


Patxi Sanz
Tudela (NA)
Patxi Sanz
2009-06-11 16:59:56 UTC
Permalink
Raw Message
De nada :-)
--
Un saludo,


Patxi Sanz
Tudela (NA)
v***@gmail.com
2015-06-16 17:55:40 UTC
Permalink
Raw Message
Post by Patxi Sanz
De nada :-)
--
Un saludo,
Patxi Sanz
Tudela (NA)
Hola! sus explicaciones han sido de mucha ayuda pero tengo un caso que espero me puedan ayudar,

Problema 1

Yo requiero llenar un sub formulario así que las selecciones del combo 1 y combo 2 (con el procedimiento de evento) se producen en filas consecutivas a medida que se van generando nuevas ordenes, el problema esta que cuando voy a la fila siguiente se desconfigura la información seleccionada en las filas anteriores.

Problema 2,

El combo 2 me arroja información de la tabla donde guardo la Lista de opciones pero de una columna errada , y no se como configurarlo para que me lo arroje específicamente de la columna que necesito.

Espero me puedan entender y ayudar ,

gracias y saludos
javier
2009-06-11 16:35:03 UTC
Permalink
Raw Message
Gracias Patxi.

Sabiendo que es difícil me concentraré mejor en otras posibilidades y otras
soluciones.

Un saludo.
y***@gmail.com
2016-07-20 18:05:40 UTC
Permalink
Raw Message
Post by javier
En un campo de una tabla llamado [ Zona ] puedo introducir valores que elijo
y que están en otra Tabla. Es decir mediante un Cuadro combinado elijo los
valores "Norte", "Sur", "Este" y "oeste".
Para ello en la vista Diseño de la tabla usé el "Asistente para búsquedas..."
La cuestión es que a continuación tengo otro campo llamado [ Regiones ] y
también quería tener un Cuadro combinado, y así según el valor elegido
anteriormente (en el campo anterior) debería mostrame una lista de valores.
Por ejemplo si he elejido la Zona "Norte" debe mostrarme para elegir 5
Regiones que tengo en la zona Norte, pero si elijo la Zona "Sur" deberá
mostrame 7 regiones distintas que pertenecen a la zona Sur. Y así
sucesivamente.
Pues esa es la cuestión. ¿Sabeis cómo se hace esto?. Soy bastante nuevo en
Access.
Muchas gracias.
Un saludo.
Buenas. Amigos, actualmente estoy creando una base de datos en access 2010, que haga justo lo que plantean en este tema; pero sin el uso de formularios, sino que la actualizacion se haga dependiendo de un campo guardado anteriormente en esta misma tabla. Explicando un poco:

Existen dos tablas: "Boleto" y "Horarios"

"Boleto">>> contiene los campos: Destino, fecha de salida y hora de salida.
"Horarios">>> contiene el campo: Fechas de salida.

La cuestion es que la tabla "Horarios" esta relacionada con otra tabla llamada "Vuelos" que contiene los campos "Destino" y "Numero de vuelo". Esto es porque cada dia, se crearan nuevos registros de los vuelos que saldran ese dia con distintos destinos y numeros de vuelos.

////////////////////

Busco que el campo "Fecha de salida" en la tabla "Boleto" se actualize dependiendo de lo seleccionado en el campo "Destino" de esa misma tabla buscando asi los vuelos organizados por fechas del registro en la tabla "Horario">"Vuelos".

Pude lograr esto a medias, pero con una consulta, en la que preguntaba el destino del vuelo, y dependiendo de esto, me mostraba todas las fechas que contenian ese destino. Pero esto para mi, es impractico.
José Mª Fueyo
2016-07-21 08:42:20 UTC
Permalink
Raw Message
Hola
No te recomiendo que publiques en un hilo que lleva más de cinco años cerrado. Te recomiendo que crees tu propio hilo, y más teniendo en cuenta que no corresponde totalmente con la temática tratada en él.
No acabo de entenderte, así que sí explicas lo explicas un poco más (en un hilo aparte) quizás te pueda ayudar.

Salu2,
José Mª Fueyo

Loading...