Buenas te paso un ejemplo echo para un ListView y un listbox.
Utiliza: 1 textbox1, 1 ListBox1, 1 Comand1, 1 Data1 enlazado a la db, 1 Listview = Lsv1
Ttabla: Clientes
id_cliente
Cod_cliente
Nombre
apellidos
Tabla : Telefonos
Id_cliente
Telefono
'
Private Sub Form_Load()
ChDir App.Path
' cabeceras del Lisview
lsv1.ColumnHeaders.Add , , "Cliente", lsv1.Width / 6
lsv1.ColumnHeaders.Add , , "Nombre", lsv1.Width / 6
lsv1.ColumnHeaders.Add , , "Apellidos", lsv1.Width / 6
lsv1.ColumnHeaders.Add , , "Telefono", lsv1.Width / 6
lsv1.View = lvwReport
End Sub
Private Sub Command1_Click()
Dim clave As String
Data1.RecordSource = "Select * from Clientes" ' Cargamos la tabla Clientes
Data1.Refresh
CRITERIO = "Nombre = '" & Text1 & "'" ' buscamos el nombre exacto
Data1.Recordset.FindFirst CRITERIO
If Data1.Recordset.NoMatch Then
MsgBox "NO Encomtrado"
Else
lsv1.ListItems.Clear ' limpiamos el list
clave = Data1.Recordset!id_cliente ' guardo el campo clave
lsv1.ListItems.Add (1), , Data1.Recordset!Cod_Cliente ' muestro los datos
lsv1.ListItems(1).SubItems(1) = Data1.Recordset!Nombre
lsv1.ListItems(1).SubItems(2) = Data1.Recordset!Apellidos
List1.AddItem "Codigo:" & Data1.Recordset!Cod_Cliente
List1.AddItem "Nombre:" & Data1.Recordset!Nombre
List1.AddItem "Apell.:" & Data1.Recordset!Apellidos
Data1.RecordSource = "Select * from Telefonos" ' cargamos la tabla Telefonos
Data1.Refresh
CRITERIO = "id_cliente = '" & clave & "'" ' Buscamos el registro segun el id_cliente
Data1.Recordset.FindFirst CRITERIO
lsv1.ListItems(1).SubItems(3) = Data1.Recordset!Telefono ' lo mostramos
List1.AddItem "Telef.:" & Data1.Recordset!Telefono
End If
End Sub