none
filtrar combobox por un textbox RRS feed

  • Pregunta

  • Estimados muy buenas tardes, tengo una duda, quiero que un combobox me muestre datos al realizar el filtro por un textbox

    en mi caso mi base de datos es algo asi

    Tabla de la base de datos = "Producto" en la cual tengo los campos: codprod, descripcion, codlot, fecven

    los datos serian...

    P0001, producto 01, L0001, 16/10/2016
    P0001, producto 01, L0002, 20/08/2016
    P0001, producto 01, L0003, 15/01/2016
    P0001, producto 01, L0004, 16/10/2016
    P0002, producto 01, L0002, 20/08/2016
    P0002, producto 01, L0003, 15/01/2016

    para mi caso en el textbox coloco "P0001" y quisiera que el combobox me muestre los siguientes datos

    L0001
    L0002
    L0003
    L0004

    muchas gracias.

    lunes, 31 de agosto de 2015 22:46

Todas las respuestas

  • Lo que tienes que hacer es cargar los datos aplicando ese filtro. No pones con que tipo de base de datos trabajas, pero suponiendo que sea Access puedes hacerlo de esta forma:

    Private Sub TxtTextbox_Change()

    CargaCombo(TxtTextbox.Text)

    End Sub

    Esta función se encarga de cargar los registros que cumplan el filtro:

    Private Sub CargaCombo (Filtro as String)

    CbxCombo.Clear

    Dim Cnn as New Adodb.Connection

    Dim Rst As New Adodb.Recordset

       

    Cnn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};" & _
                                     "Dbq=" & RutaDeLaBaseDeDatos
    Cnn.Open

    Rst.Open "Select * From Producto Wherecodprod='" & Filtro & "' Order By codlot", Cnn, adOpenDynamic, adLockOptimistic
    While Not Rst.EOF
       CbxCombo.AddItem Rst("producto") & ""

       Rst.MoveNext
    Wend
    Rst.Close
    Set Rst = Nothing

    Cnn.Close
    Set Cnn = Nothing

    End Sub


    Saludos, Javier J

    martes, 1 de septiembre de 2015 7:35
  • Hola Javier, gracias por responder, estoy usando una base de datos en SQL Server, en la parte que pones 

    Private Sub CargaCombo (Filtro as String)

    Ese Filtro a que hace referencia?? o ese es el nombre de la variable que estaria creando lineas mas abajo??

    Muchas gracias.

    martes, 8 de septiembre de 2015 21:25
  • Filtro es el código del producto que se usa para filtrar los registros a presentar en el combo con

    Rst.Open "Select * From Producto Where codprod='" & Filtro & "' Order By codlot", Cnn, adOpenDynamic, adLockOptimistic


    Saludos, Javier J

    miércoles, 9 de septiembre de 2015 6:45