Cita:
Iniciado por Lalybs
Buenas tardes, espero que hayas podido solucionar tu problema porq me encuentro en la misma situación.
tengo dos tablas a las llamo t1: Puestos; t2: cajas y lo que necesito es filtrar desde un combo2 las cajas de un puesto determinado y seleccionado del combo1.. para lo cual eh utilizado el siguiente código..
pero no me funciona, si alguien puede ayudarme por favor... desde ya muchas gracias! Saludos
Hola, lo puedes hacer de esta manera:
En el primer combo cargamos el campo denominacion de la tabla puestos y en la propiedad ItemData el id del mismo campo
Código:
Private Sub Form_Load()
Dim ry As New ADODB.Recordset
ry.Open "Select * From puestos", con, adOpenKeyset, adLockOptimistic, adCmdText
Do Until ry.EOF()
Combo1.AddItem ry!denominacion
Combo1.ItemData(Combo1.NewIndex) = ry!id
ry.MoveNext
Loop
ry.Close
End Sub
y al seleccionar un elemento del combo, cargamos en el segundo los registros de la tabla cajas cuyo id coincida con el de la tabla anterior
Código:
Private Sub Combo1_Click()
Dim ra As New ADODB.Recordset
sql = "SELECT * FROM cajas WHERE id = " & Combo1.ItemData(Combo1.ListIndex)
ra.Open sql, con, adOpenKeyset, adLockOptimistic
Combo2.Clear
If Not (ra.EOF And ra.BOF) Then
Do Until ra.EOF()
Combo2.AddItem ra!denominacion
ra.MoveNext
Loop
Combo2.SetFocus
End If
ra.Close
End Sub