ADO y Combobox
Sin usar el control ADO, ¿Como puedo visualizar los datos de una tabla en un Combobox? Intento incluir en el proyecto el ocx para poder usar DBcombo y siempre recibo un error de conflicto.
crea el siguiente proceimiento publico en el modulo
Public Sub LlenarComboBox(ByRef combo As ComboBox, ByVal tabla As String, ByVal clave As String, ByVal campomostrar As String, ByRef longclave As Integer, Optional condiciones As String)
Dim rstabla As ADODB.Recordset
Dim sqlconsulta As String
Set rstabla = New ADODB.Recordset
sqlconsulta = "Select " & clave & "," & campomostrar & " from " & tabla & " order by " & campomostrar & ""
If Len(condiciones) > 0 Then
sqlconsulta = "Select " & clave & "," & campomostrar & " from " & tabla & " Where " & condiciones & " order by " & campomostrar & ""
End If
rstabla.Open sqlconsulta, cnbdCentroRecursos, adOpenStatic, adLockOptimistic
If Not rstabla.BOF Then
longclave = rstabla.Fields("" & clave & "").DefinedSize
Do While Not rstabla.EOF
combo.AddItem rstabla.Fields("" & campomostrar & "")
combo.ItemData(combo.NewIndex) = CInt(rstabla.Fields("" & clave & ""))
rstabla.MoveNext
Loop
combo.ListIndex = 0
Else
MsgBox "no se encontraron datos", vbOKOnly
End If
rstabla.Close
Set rstabla = Nothing
End Sub
Public Sub LlenarComboBox(ByRef combo As ComboBox, ByVal tabla As String, ByVal clave As String, ByVal campomostrar As String, ByRef longclave As Integer, Optional condiciones As String)
Dim rstabla As ADODB.Recordset
Dim sqlconsulta As String
Set rstabla = New ADODB.Recordset
sqlconsulta = "Select " & clave & "," & campomostrar & " from " & tabla & " order by " & campomostrar & ""
If Len(condiciones) > 0 Then
sqlconsulta = "Select " & clave & "," & campomostrar & " from " & tabla & " Where " & condiciones & " order by " & campomostrar & ""
End If
rstabla.Open sqlconsulta, cnbdCentroRecursos, adOpenStatic, adLockOptimistic
If Not rstabla.BOF Then
longclave = rstabla.Fields("" & clave & "").DefinedSize
Do While Not rstabla.EOF
combo.AddItem rstabla.Fields("" & campomostrar & "")
combo.ItemData(combo.NewIndex) = CInt(rstabla.Fields("" & clave & ""))
rstabla.MoveNext
Loop
combo.ListIndex = 0
Else
MsgBox "no se encontraron datos", vbOKOnly
End If
rstabla.Close
Set rstabla = Nothing
End Sub