VBA, ComboBox Seleccionar, Buscar texbox, lista en listbox
Tengo código de buscar: TextBox1
Private Sub TextBox1_Change() On Error Resume Next uf = Hoja4.Range("A" & Rows.Count).End(xlUp).Row If TextBox1 = "" Then Me.ListaEquipos.RowSource = "Equipos" Exit Sub End If Hoja1.AutoFilterMode = False Me.ListaEquipos = Clear Me.ListaEquipos.RowSource = Clear For fila = 1 To uf strg = Hoja4.Cells(fila, 1).Value 'Variable para descripción Codigo = Hoja4.Cells(fila, 2).Value 'Variable para codigo If UCase(strg) Like "*" & UCase(TextBox1.Value) & "*" Then Me.ListaEquipos.AddItem Me.ListaEquipos.List(X, 0) = Hoja4.Cells(fila, 1).Value Me.ListaEquipos.List(X, 1) = Hoja4.Cells(fila, 2).Value X = X + 1 ElseIf Codigo Like "*" & UCase(TextBox1.Value) & "*" Then Me.ListaEquipos.AddItem Me.ListaEquipos.List(X, 0) = Hoja4.Cells(fila, 1).Value Me.ListaEquipos.List(X, 1) = Hoja4.Cells(fila, 2).Value X = X + 1 End If Next End Sub
Codigo del ComboBox1, del Experto Dante Amor
Private Sub ComboBox1_Change() Dim i As Long With ListaEquipos TextBox1 = Empty 'Limpia el Texto de busqueda .RowSource = "" If ComboBox1.Value = "" Or ComboBox1.ListIndex = -1 Then ListaEquipos.RowSource = "Equipos" Else For i = 1 To Hoja4.Range("A" & Rows.Count).End(3).Row If Hoja4.Range("C" & i).Value = ComboBox1.Value Then .AddItem .List(.ListCount - 1, 0) = Hoja4.Range("A" & i).Value .List(.ListCount - 1, 1) = Hoja4.Range("B" & i).Value .List(.ListCount - 1, 2) = Hoja4.Range("C" & i).Value End If Next End If End With End Sub
Tengo algunos correcciones que se pueden hacer.
Seleccionar en el combobox1, Buscar TextBox1 porque va ver cantidad de datos, seleccionar del ListaEquipos y ListaTurno, al final Aceptar.
- El combobox seleccionado Pesados, solo ese tipo de equipo me debe buscar en la ListaEquipos
- Al Aceptar, Guardar los datos del lisbox en 02 hojas diferentes; "Livianos" y "Pesados" según la selección del ComboBox.
1 respuesta
Respuesta de facundo garcia