Pesquisa em mais de 1 coluna

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Pesquisa em mais de 1 coluna

Mensagempor robertonl » Sáb Set 15, 2018 11:23 pm

Boa Noite.
Estou com uma planilha que realizei uma adaptação de código, na qual na listbox aparece mais que 10 coluna, porém quando desejo realizar uma consulta, qualquer tecla que digito, o cadastro que está na planilha aparece dentro da listbox.
A adaptação que estou tentando realizar é que ao digitar qualquer termo no campo independente em qual coluna se encontra, somente a informação vá para dentro do listbox.

Código: Selecionar todos
Private Sub PreencheLista()
    Dim TextoDigitado As String
    TextoDigitado = Txt_LocalizaRegistro.Text
    'código que irá filtrar os nomes
    'Dim linha As Integer
    'Dim coluna As Integer
    Dim textocelula As String
    Dim i
    Dim arrayItems()
    Dim linha, coluna
    With Planilha2
        ReDim arrayItems(1 To .UsedRange.Rows.Count, 1 To .UsedRange.Columns.Count)
        Me.Lista_Fornecedores.ColumnCount = .UsedRange.Columns.Count
        For linha = 2 To .UsedRange.Rows.Count
            Me.Lista_Fornecedores.AddItem
            For coluna = 1 To .UsedRange.Columns.Count
                arrayItems(linha, coluna) = .Cells(linha, coluna).Value
            Next coluna
        Next linha
       
        Me.Lista_Fornecedores.List = arrayItems()
    End With
    'End If
End Sub

Você não está autorizado a ver ou baixar esse anexo.
robertonl
Membro
Membro
 
Mensagens: 103
Registrado em: Sáb Fev 28, 2015 2:39 pm
Has thanked: 27 times
Have thanks: 0 time

{ SO_SELECT }

Re: Pesquisa em mais de 1 coluna

Mensagempor robertonl » Ter Set 18, 2018 3:40 pm

Boa tarde.
Implementei este codigo para localizar dado, porém qualquer letra que digito, ele coloca todos os registro na caixa de listagem.
Estou querendo que a medida que digito qualquer parte do nome ele aparece na caixa de listagem.
A ideia é que qualquer parte do nome digitado aparece na caixa de listagem.
Exemplo(se digitar BER) qualquer coluna que tiver vai aparecendo na caixa de listagem.
A pesquisa deverá retornar em qualque coluna, a principio desejo que a pesquisa seja realizada nas colunas
b(Razão Social) C (Nome Fantasia) D(Endereço), E(Bairro)
Código: Selecionar todos
Private Sub PreencheLista()
    Dim TextoDigitado As String
    TextoDigitado = Txt_LocalizaRegistro.Text
    'código que irá filtrar os nomes
    'Dim linha As Integer
    'Dim coluna As Integer
    Dim textocelula As String
    Dim i
    Dim arrayItems()
    Dim linha, coluna
With Planilha2
    ReDim arrayItems(1 To .UsedRange.Rows.Count - 1, 1 To .UsedRange.Columns.Count + 1)
    Me.Lista_Fornecedores.ColumnCount = .UsedRange.Columns.Count + 1
    For linha = 1 To .UsedRange.Rows.Count - 1
        Me.Lista_Fornecedores.AddItem
        For coluna = 1 To .UsedRange.Columns.Count + 1
        If coluna = 13 Then
            arrayItems(linha, coluna) = linha + 1
        Else
            arrayItems(linha, coluna) = .Cells(linha + 1, coluna).Value
        End If
        Next coluna
    Next linha
    Me.Lista_Fornecedores.List = arrayItems()
End With
    'End If
End Sub

robertonl
Membro
Membro
 
Mensagens: 103
Registrado em: Sáb Fev 28, 2015 2:39 pm
Has thanked: 27 times
Have thanks: 0 time


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: Google Adsense [Bot] e 13 visitantes