Llenar combo box

Deja vu
04 de Marzo del 2004
Alguien me puede decir como llenar un combo box con los elementos de una base de datos sin que se repitan los elementos, yo lo hago asi:

rsClientes.Open "Select * from Clientes", cnClientes, adOpenDynamic, adLockOptimistic

Do While Not rsClientes.EOF
cboClientePedido.AddItem (rsClientes!Nombre_Cliente)
cboClientePedido.ItemData(cboClientePedido.NewIndex) = rsClientes!ID_Cliente
rsClientes.MoveNext
Loop

Yo utilizo ADO.

Porfavor ayudenme

sdemingo
04 de Marzo del 2004
Haz un select distinct en tu sql

Deja vu
04 de Marzo del 2004
Ya lo hice, pero para llenar el combo utilizo id pero no no funciona el distinct en dos campos

sdemingo
04 de Marzo del 2004
Tendrás que hacer una select dentro de otra.

en la principal haces el distinct por un campo y en la interna haces el select con los dos campos.

egamonty
04 de Marzo del 2004
Yo utilizo esta función:
Function RellenaCombo(base As ADODB.Connection, cade As String, micombo As ComboBox)
Dim rcsbuscar As New ADODB.Recordset

Call rcsbuscar.Open(cade, base, adOpenKeyset, adLockOptimistic)

If rcsbuscar.EOF = True And rcsbuscar.BOF = False Then rcsbuscar.MoveFirst

If Not IsNothing(rcsbuscar.Fields(0).Value) Then

Do While rcsbuscar.EOF = False
If Not IsNothing(rcsbuscar.Fields(0).Value) Then
micombo.AddItem (rcsbuscar.Fields(0).Value)
End If
rcsbuscar.MoveNext
Loop

End If

Call rcsbuscar.Close: Set rcsbuscar = Nothing
End Function

espero que te sea util