Cuadro combinado en cascada. No consigo que me funcione

Tengo una base de datos en la cual hay un formulario de inicio con dos cuadros combinados "Territorio_Form" que tira de un campo llamado Tbl_Territorio de una tabla denominada "OC_Tbl_Territorios" y un segundo cuadro combinado que se llama "Agente_Form" que tira de un campo llamado "tbl_Agentes" de una tabla denominada "OC_Tbl_Agentes" en esta tabla hay un segundo campo denominado "tbl_Agentes_Territorio" que es es que serviría de relación con la tabla Tbl_Territorio. Lo que quiero es que al seleccionar el cuadro combinado "Territorio_Form" cuando selecciones el cuadro Agente_Form solo me aparezcan los agentes que corresponden a ese territorio.

He estado buscando y he encontrado algunas soluciones pero no sé como lo estoy haciendo que no me funciona.

Si alguien tuviera la amabilidad de informarme se lo agradecería, dado la urgencia que tengo en terminar este asunto la opción más adecuada es que le pudiera enviar la base de datos tal cual la tengo montada para que me lo hiciera sobre la marcha. Sé que este quizás no sea el espíritu de esta página pero necesito solventar este asunto con urgencia.

1 respuesta

Respuesta
1

Me he liado con los nombre. Lo mas cómodo sería que le dieras origen de la fila al segundo formulario una vez que hayas elegido un territorio en el primer combinado. Vamos a suponer que los campos que se relacionan son de tipo texto, por ejemplo, Alemania con Alemania. En las propiedades del primer combinado, en el evento Después de actualizar, podrías poner

me!agente_form.rowsource="select tblAgentes from OCTbl_agentes where tblTerritorio='" & me.territorioform & "'"

O también podrías ponerlo en el evento Al recibir el enfoque del segundo cuadro de texto.

Por ejemplo, tengo un formulario con un combinado llamado ElegirPais, que me mostrará algunos

Selecciono Alemania y cuando pongo el cursor sobre el combinado ElegirCliente, sólo me muestra los de Alemania

En este caso, el código se lo he puesto en el evento Al recibir el enfoque del combinado ElegirCliente( es que os gusta poner nombres complicados)

Private Sub ElegirCliente_GotFocus()
ElegirCliente.RowSource = "select cliente from clientes where pais='" & Me.Elegir & "'"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas