Como filtrar listview con textbox

Para Dante Amor

¿Hola cómo estas?

Necesito de tu ayuda por favor!

Sabes que encontré un código que lista los archivos pdf en un listview y al hacer dobleclic muestra el pdf en un webbrowser ...

Mi pregunta es como seria que al escribir en un textbox el listview se filtre y si dejo en blanco el textbox aparezca la lista de los pdf otra vez.

Le dejo el codigo

Dim RUTA As String
Private Sub UserForm_Initialize()
On Error GoTo Errores
Dim fName As String
         RUTA = "\"
LV.ListItems.Clear
fName = Dir(RUTA)
Do While Len(fName) > 0
    If fName Like "*" & ".pdf" Then Set SUBELEMENTO = LV.ListItems.Add(, , fName)
    fName = Dir
Loop
Exit Sub
End Sub
Private Sub LV_DblClick()
On Error GoTo Errores
NOMBRE = LV.SelectedItem.Text
archivo = RUTA & NOMBRE
UserForm1.WEBB.Navigate archivo
Exit Sub
End Sub

1 Respuesta

Respuesta
1

H o l a:

Agrega el siguiente evento a tu formulario. Cambia Textbox1 por el nombre de tu textbox.

Private Sub TextBox1_Change()
'Por.Dante Amor
    LV.ListItems.Clear
    fName = Dir(RUTA)
    Do While Len(fName) > 0
        If fName Like "*" & TextBox1 & "*.pdf" Then Set SUBELEMENTO = LV.ListItems.Add(, , fName)
        fName = Dir
    Loop
End Sub

Dan

Era lo mismo que que el código solo se agregaba el textbo1 "no hubiese caído nunca ahí XD"  

Tengo una duda el Like hace la busqueda exacta lo que pasa es que quiero que no distiga entes mayuscula y minuscula hay archivos que dice Ej: ACIDO y otro acido

Como seria en ese caso?

Quedaría así:

Private Sub TextBox1_Change()
'Por.Dante Amor
    LV.ListItems.Clear
    fName = Dir(RUTA)
    Do While Len(fName) > 0
        If UCase(fName) Like UCase("*" & TextBox1 & "*.pdf") Then Set SUBELEMENTO = LV.ListItems.Add(, , fName)
        fName = Dir
    Loop
End Sub

S aludos

Dan 

Me ocurrió algo que le puse un código al userform que se abriera automáticamente al abrir el excel y otro para que se cierre y guarde al hacer click en la X del userform  ... Ahora no puedo entrar al código tengo la opción de cerrar el userform y no se como hacer para que deje de mostrar el userform al abrir el libro para entrar al código...

Te hago esta pregunta en otro tema o me das la mano en este tema...

Gracias

Ahí pude detener la macro! Ahora veo la respuesta tuya!

Saludos

Dan ...

Lo que pasa es que también tienen acento y no la encuenta.. como seria la condición para que distinga mayúscula , minúscula , acento ... que busque independiente de como este el nombre

Ej: ÁCIDO - ACIDO - acido - Acido

Por favor

El inputbox no es un traductor o un corrector de idioma, tendrás que capturar el acento en cada caso.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas