Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/01/2008, 03:42
ReViJa
 
Fecha de Ingreso: abril-2007
Mensajes: 187
Antigüedad: 18 años
Puntos: 1
Re: como cargar datos en un combo

Te pongo un ejemplo:


Código:
Private Sub Form_Load()
  
Set BD = OpenDatabase(App.Path & "\BD.mdb")
Set RecSQL = BD.OpenRecordset("SELECT * FROM tabla1")

While Not RecSQL.EOF
  Combo1.AddItem RecSQL.Fields("nombre").Value & "|" & RecSQL.Fields("direccion").Value
  Combo1.ItemData(Combo1.NewIndex) = RecSQL.Fields("id").Value
  RecSQL.MoveNext
Wend

RecSQL.Close
Set RecSQL = Nothing
End Sub

Private Sub Combo1_Click()
Combo2.Clear
Set RecSQL = BD.OpenRecordset("SELECT * FROM tabla2 WHERE id LIKE " & Combo1.ItemData(Combo1.ListIndex))

While Not RecSQL.EOF
  Combo2.AddItem RecSQL.Fields("Telefono").Value & "|" & RecSQL.Fields("Mail").Value
  RecSQL.MoveNext
Wend

RecSQL.Close
Set RecSQL = Nothing
End Sub

Private Sub Form_Unload(Cancel As Integer)
Set BD = Nothing
End Sub
No es lo que tu pides pero es muy parecido, me explico...
Al cargar el formulario llena el combo1 con los datos de la tabla1 y en la propiedad Combo1.ItemData(Combo1.NewIndex) le agrego el campo ID (clave principal de la tabla) para poder hacer referencia a ese registro.

Al seleccionar un registro en el cobo1 vaciamos el cobo2 (para no mezclar datos y hacemos una SQL con la condición(WHERE) Combo1.ItemData(Combo1.ListIndex) que nos devuelve la ID del registro que previamente antes habíamos guardado y procede a cargar su teléfono y su email.

Necesitas 2 tablas y vincularlas por su ID, ok.

Si tenéis dudas con la conexión a access podéis mirar AQUI

Espero que os sirva.