Cuadro combinado que toma datos de distintas tablas

Tengo tres tablas: CLIENTES - PROVEEDORES - CUENTAS

La tabla Cuentas tiene 2 campos: Tipo y Nombre

Quiero hacer un formulario de la tabla Cuentas, que tenga el campo Tipo donde elijo "Clientes", Proveerdores" u "Otros".

Luego según lo que elijo en ese campo, se actualiza la información que tiene el cuandro combinado "Nombre".

Si el campo Tipo = Proveedores que tome el origen de datos en el campo Nombre de la tabla Proveedores.
Si el campo es Clientes = que tome los datos del la tabla Clientes.
Si el campo es Otros = Que te deje escribir libremente la cuenta deseada.

2 respuestas

Respuesta
2

Prueba lo siguiente:

En el evento "Al recibir el enfoque" del cuadro combinado [Nombre] genera el siguiente código:

...

Private sub...
Select case me.Tipo
Case "Clientes"
me.Nombre.rowsource="SELECT Nombre FROM Clientes"
Case "Proveedores"
me.Nombre.rowsource="SELECT Nombre FROM Proveedores"
Case else
me.Nombre.rowsource=""
End select
End sub

...

Quizás tengas que ajustar los nombres que yo he usado a los que realmente tengas en tu BD, si no son iguales.

A ver si es eso lo que pedías.

Un saludo,

Neckkito

http://nksvaccessolutions.com/

Funciono!
Pero como hago para que se establezca algún tipo de relación

Ejemplo: Tengo dos registros en la tabla CUENTAS

TIPO: Proveedor - NOMBRE: Pepito
TIPO: Cliente- NOMBRE: Juan

Ahora, el día de mañana el proveedor Pepito cambia su nombre a Pepito SRL. Como hago para que el registro del campo cuenta que se llamaba Pepito, también se modifique a Pepito SRL.

Tengo confusión con la relación porque según el TIPO el NOMBRE lo saco de una tabla o sino de otra. No se como se relacionaría ahí un mismo campo CUENTAS. NOMBRE con dos tablas distintas.

Espero su ayuda! Fueron muy precisos!

Sebastián:

Lo que pides denota un pobre conocimiento de Access y, en concreto, de cómo se establecen las relaciones entre tablas y cómo se definen las características de las mismas.

Mi consejo es que te leas este artículo (http://goo.gl/FgGc2G ) y ahí verás cómo crear las relaciones y definirlas, y entre ellas encontrarás la característica de "actualizar campos en cascada".

¡Gracias! 
Tengo otra pregunta que no esta teniendo respuesta, me puedes ayudar? 

Consulta mixta de varias tablas Access 

Saludos!!

Respuesta
1

Sebastián: En el Evento al perder el foco de tu control Tipo, que voy a suponer que se llama TxtTipo, pones ésto >>

Private Sub TxtTipo_LostFocus()
Select Case Me.TxtTipo
    Case “Provedores”
         Me.Nombre.RowSource = “SELECT Nombre FROM Proveedores”
         Me.Nombre.Requery
         Me.Nombre.LimitToList = True
         Me.Nombre.AllowValueListEdits = False
     Case “Clientes”
         Me.Nombre.RowSource = “SELECT Nombre FROM Clientes”
         Me.Nombre.Requery
         Me.Nombre.LimitToList = True
         Me.Nombre.AllowValueListEdits = False
     Case “Otros”
         Me.Nombre.RowSource = “”
         Me.Nombre.LimitToList = False
         Me.Nombre.AllowValueListEdits = True
End Select
End Sub

No lo he probado, pero supongo que no tendrás dificultades. Mis Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas