Página 1 de 1

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 10:23
por ThiagoCarlotto10
Bom dia!

Criei uma planilha para inserir dados de saída de materiais, porem estou com dificuldades para inserir o campo de pesquisa.
Gostaria que fosse digitado na aba "capa" a pesquisa e fosse para a aba cadastro já realizando um auto filtro da palavra ou numero procurado.

deixo a planilha em anexo.

Help!

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 10:41
por Parkeless
Olá Thiago!

Você quer que o filtro se aplique em qual coluna na aba "Cadastro"?

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 10:44
por ThiagoCarlotto10
isso! quero digitar na aba "capa" e quero que va direto para aba "cadastro" já realizando um filtro do que procuro...tentei fazer uma referencia com a formula & na coluna AA, da aba "cadastro", mas não obtive sucesso.

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 10:45
por ThiagoCarlotto10
filtro é em todos os campos de B5 até x20004

Re: Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 11:07
por Parkeless
Vê se seria isso.

Usei sua ideia da fórmula AA kk, só adaptei o código.

Código na aba "Capa":
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)

'Se não for K8, ou K8 = nada, não executar
If Target.Address <> "$K$8" Or Range("K8") = "" Then: Exit Sub


Application.ScreenUpdating = False

'Seleciona planilha
Sheets("Cadastro").Select
On Error GoTo Errorh ' Se erro, ir para o final e ativar os filtros

'Filtrar o valor da K8 na coluna AA
ActiveSheet.Range("$B$4:$AA$20004").AutoFilter Field:=26, Criteria1:= _
    "*" & Target & "*", Operator:=xlAnd
Application.ScreenUpdating = True

Exit Sub

Errorh:

'Ativar Filtros
Range("B4:AA5").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.AutoFilter
Resume



End Sub

Re: Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:14
por ThiagoCarlotto10
Não consegui...
deu um problema no filtro.

Ativar Filtros

Range("B4:AA5").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.AutoFilter
Resume

erro no depurador... método select da classe range..
pq será?

End Sub

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:25
por Kledison
Olá Thiago,
baixe a planilha que o Parkless postou, tem algumas colunas que ele acrescentou por isso está dando erro.

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:26
por Parkeless
Eita, o ErrorHandler que fiz ficou bugado. kk

Alterei o código, tenta agora:
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)

'Se não for K8, ou K8 = nada, não executar
If Target.Address <> "$K$8" Or Range("K8") = "" Then: Exit Sub


Application.ScreenUpdating = False

'Seleciona planilha
Sheets("Cadastro").Select
On Error GoTo Errorh ' Se erro, ir para o final e ativar os filtros

'Filtrar o valor da K8 na coluna AA
ActiveSheet.Range("$B$4:$AA$20004").AutoFilter Field:=26, Criteria1:= _
    "*" & Target & "*", Operator:=xlAnd
Application.ScreenUpdating = True

Exit Sub

Errorh:

'Ativar Filtros
Sheets("Cadastro").Range("B4:AA20004").Select
Selection.AutoFilter
Sheets("Cadastro").Range("A1").Select
Resume



End Sub
@Kledisson, na verdade não cheguei a incluir colunas, só reexibi as que estavam ocultas...

Acho que o problema era porque o filtro ativo ia até a coluna "X", não até "AA".

Se for isso, essa alteração resolve.

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:28
por ThiagoCarlotto10
Obrigado Kledison, não tinha visto!

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:32
por ThiagoCarlotto10
Funcionou, mas logo apos que apago a pesquisa não volta as linhas, qual a magica que utilizo para voltar tudo ao normal depois que apago a busca?

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:34
por Kledison
Ok Parkless, não tinha atentado para o código do ErrorHandler.... :D :D

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:35
por ThiagoCarlotto10
tem como dar uma mensagem de erro se não localizar nada?

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 12:52
por ThiagoCarlotto10
ta show a planilha....so fiquei com essa duvida se tem como depois de apagar a busca, se tem como a aba "cadastro" ser removido o filtro

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 13:15
por Parkeless
Fiz as alterações; dá uma olhada.

Ajuda para criar uma pesquisa com o VBA

Enviado: 20 Jan 2016 às 13:19
por ThiagoCarlotto10
Mago!