Página 1 de 1

Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Seg Nov 11, 2019 8:14 pm
por SOUZA1983
Boa noite amigos,


Sou novo na questão de VBA ainda, peguei um codigo de vba para consulta de listbox apos digitar a palavra em textbox porem, ele só consulta a primeira palavra, exemplo:

em uma frase: "Aço Inox 304 Com diametro de raio 157mm"
gostaria de Consultar as partes das frase:

"Aço Inox 304 Com diametro de raio 157mm" - caso consulte por "aço" este deva aparecer no listbox
"Aço Inox 304 Com diametro de raio 157mm" - caso consulte por "Diametro" Também apareça este no listbox
"Aço Inox 304 Com diametro de raio 157mm"-Caso Consulte "Raio" também apareça.

eu quero um consulta contendo determinada palavra e mostre tudo no lisitbox.

segue meu codigo:

Private Sub PreencheLista(ByVal TextoDigitado As String)
Dim ws As Worksheet
Dim i As Integer
Dim x As Integer
Dim indiceLista As Integer
Dim coluna As Integer
Dim TextoCelula As String
Set ws = ThisWorkbook.Worksheets(NomePlanilha)
Dim Lista()

ReDim Lista(ws.UsedRange.Columns.Count, 0)

i = LinhaCabecalho + 1
indiceLista = 1
coluna = Me.ComboBoxCampos.ListIndex + 1
Call PreencheCabecalho(Lista)

ListBoxLista.Clear
With ws
While .Cells(i, coluna).Value <> Empty
TextoCelula = .Cells(i, coluna).Value
If UCase(Left(TextoCelula, Len(TextoDigitado))) = UCase(TextoDigitado) Then

For x = 0 To ws.UsedRange.Columns.Count - 1
ReDim Preserve Lista(ws.UsedRange.Columns.Count, indiceLista)
Lista(x, indiceLista) = .Cells(i, x + 1)
Next

indiceLista = indiceLista + 1
End If
i = i + 1
Wend
End With

Lista = Array2DTranspose(Lista)

Me.ListBoxLista.List = Lista
End Sub

Re: Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Seg Nov 11, 2019 9:56 pm
por avgsantos
Boa noite, Souza

Substitua a linha
If UCase(Left(TextoCelula, Len(TextoDigitado))) = UCase(TextoDigitado) Then
Por
If InStr(UCase(TextoCelula), UCase(TextoDigitado)) > 0 Then

Avgsantos

Re: Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Ter Nov 12, 2019 10:02 am
por Reinaldo
Particularmente não entendi a demanda?
"...em uma frase: "Aço Inox 304 Com diametro de raio 157mm"
gostaria de Consultar as partes das frase:..."
Onde estáessa frase? Como pretende/espera "indicar" qual parte/termo pesquisado?

Re: Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Ter Nov 12, 2019 8:44 pm
por SOUZA1983
avgsantos escreveu: Seg Nov 11, 2019 9:56 pm Boa noite, Souza

Substitua a linha
If UCase(Left(TextoCelula, Len(TextoDigitado))) = UCase(TextoDigitado) Then
Por
If InStr(UCase(TextoCelula), UCase(TextoDigitado)) > 0 Then

Avgsantos



era isso mesmo que eu queria, muito obrigado meu amigo.
Obrigado mesmo...

Re: Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Ter Nov 12, 2019 8:46 pm
por SOUZA1983
Reinaldo escreveu: Ter Nov 12, 2019 10:02 am Particularmente não entendi a demanda?
"...em uma frase: "Aço Inox 304 Com diametro de raio 157mm"
gostaria de Consultar as partes das frase:..."
Onde estáessa frase? Como pretende/espera "indicar" qual parte/termo pesquisado?
boa noite amigo,

:mrgreen: :mrgreen: :mrgreen: :mrgreen:

tudo resolvido já muito obrigado

Re: Filtrar Listbox Com Determinada Palavra Em TExtbox

Enviado: Ter Nov 12, 2019 8:51 pm
por avgsantos
Boa noite, Souza

Ok, favor marcar no tópico [Resolvido]

Vlw
Avgsantos