Cómo llenar un control de tipo lista en base a un cuadro de texto.

Tengo un archivo como el que se muestra arriba. En una «Hoja1» tengo una lista de datos. En la «Hoja 2» tengo los datos, pero tienen elementos duplicados. Necesito un control que, como se muestra en la «Hoja 3», me muestre los elementos que coinciden en la «Hoja 2» con lo que incluyo en el cuadro de texto.

Puedo usar el siguiente código:

Private Sub TextBox1_Change()

Dim v_i As Integer

ListBox1.Clear

For v_i = 1 To 1000

If Sheets(«Hoja2»).Cells(v_i, 2) = TextBox1.Value Then

ListBox1.AddItem Sheets(«Hoja2»).Cells(v_i, 3)

End If

Next v_i

End Sub

El código se ejecuta cada vez que tecleamos algo en el control TextBox1.
Limpia el contenido de ListBox1.
Revisa mil renglones de la «Hoja 2» para ver si coincide con alguno en la columna 2.
Si coincide, añade un elemento al control ListBox1, pero usa la columna 3.

Listo.

Espero que les sirva.

Share
Acerca de

Armando Franco tiene amplia experiencia en las áreas de sistemas, compras y proyectos. Cuenta con una Maestría en Administración de Tecnologías de Información, y las certificaciones Certified Purchasing Manager, Microsoft Office 2010 Specialist, Expert y Master.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.