Notifications
Clear all

Filtro Avançado COLUNAS ESPECÍFICAS

24 Posts
2 Usuários
0 Reactions
6,352 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite pessoal,

Minha dúvida é a seguinte: tenho um banco de dados com 10 colunas (de A a J), na aba PLAN1, por exemplo. Desejo criar, na ABA Plan2 um FILTRO AVANÇADO, com critério determinados lá na propria ABA Plan2, que seria executado via Macro. Até ai tudo bem.
Mas queria que o FILTRO AVANÇADO me retornasse apenas os dados de algumas colunas intercaladas, por exemplo, das colunas A, D e I especificamente, e não todo o intervalo de A a J, pq os dados contidos nas colunas que desejo excluir, nao me interessam para esta consulta. E isso tá me dando uma surra.

Outra coisa: após realizada a consulta via FILTRO AVANÇADO, como fazer uma macro para LIMPAR A CONSULTA (resultados anteriores e criterios de pesquisa)?

Desculpem se minha dúvida já foi respondida, mas procurei no forum e achei vários tópicos relacionados, mas nenhum com esta dúvida específica.

 
Postado : 08/03/2012 3:58 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!
Poste seu arquivo.

Ao anexar mande o arquivo COMPACTADO!!

Deixe bem detalhada da onde para onde oque para que.

 
Postado : 08/03/2012 4:22 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde,

Segue o banco de dados.
Gostaria que o filtro importasse os dados da aba BD, e exibisse o resultado da consulta, na aba CONSULTA.
Gostaria que fossem exibidas no resultado, somente as seguintes colunas: A, D, E, K, O, P, R, T.
O Critério de busca seria a coluna E (cnpj do devedor).
Obrigado pela ajuda.

 
Postado : 16/03/2012 1:31 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde!!

Baixe o anexo.

Tem uma seta suspensa (guia "CONSULTA"), para selecionar o CNPJ, após isso será retornado as colunas específicas.

Att

 
Postado : 17/03/2012 2:50 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Muito bom este exemplo Alexandre, por isso que adoro o VBA temos inumeras opções.

Segue mais uma variação.
De inicio utilizei o "Gravador de Macros", uma vez que o recurso "Filtro Avançado" nos permite fazer o que o leandro pediu sem precisar de VBA, feito isto foi só efetuar alguns ajustes, nomeando os Ranges de Origem e Saida.
Aproveitei e adicionei a rotina que criar e recria os Ranges Nomeados, assim quando alterarmos o BD rodamos e recriamos os endereços dinamicamente, criei uma Coluna para a filtragem somente dos CPFs Únicos e fiz a validação na Celula para selecionar um CPF, apos criada a lista com os CPF únicos, estes são classificados em ordem crescente, e por ultimos a rotina para limpar a consulta anterior.
Poderiámos ter reduzido as rotinas, juntando-as, mas preferi deixar separadas para uma melhor compreensão.

leandro, reduzi o seu modelo para ficar mais leve e poder entender melhor o que foi feito e depois acrescenta-la no forum Biblioteca para servir de exemplo a outros que procuram por recursso semelhante.

Anexo atualizado em 07/10/2015

Faça os testes e qq duvida, retorne.

[]s

 
Postado : 17/03/2012 6:45 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Obrigado aos amigos AlexandreVBA e Mauro Coutinho pela valiosa ajuda, que será muito útil em meu projeto.

Mauro, adaptei a macro "FiltraPorCpf" que vc criou para meu caso concreto e funcionou perfeitamente.

Tenho a seguinte dúvida: É possivel adaptar esta macro para que a pesquisa (filtro avançado) seja feita de outro ARQUIVO e não apenas outra ABA NO MESMO ARQUIVO?

Desde já agradeço

 
Postado : 21/03/2012 8:54 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Leandro, tem sim como jogar em outro arquivo, assim que possivel monto o exemplo, mas pesquise no forum que tem um modelo que poste que faz extamente isto, filtra para um novo arquivo.

[]s

 
Postado : 21/03/2012 11:15 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Leandro, relendo sua questão, me atentei no seguinte :

Você quer dizer 2 arquivos separados, com a criação de um terceiro, seria isto ?
Exemplo :
Arq_1 = Banco de Dados
Arq_2 = onde Digitamos o CPf
Arq_3 = Resultado da Filtragem

Digito o CPF no Arq_2, Filtro baseado no BD Arq_1 e o resultado da filtragem, crio o 3° arquivo (Arq_3).

Se for isto é um pouco mais complicado, mas se for para filtrar deste arquivo que enviei para um terceiro é mais simples.

Aguardo retorno.

[]s

 
Postado : 21/03/2012 8:06 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia Mauro,

Não são 3 arquivos não

Apenas 2, um que já é o banco de dados (BD) e um outro (que pode ser chamado de CONSULTA) que vai ser onde vai digitar o critério e aparecer o resultado do filtro.

Isso é para diminuir um pouco o numero de abas do BD, que já tem muitas no meu projeto, e evitar que os dados possam ser de alguma forma, danificados.

 
Postado : 22/03/2012 6:25 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia!!

Sendo que a ajuda do Mauro e a Minha foi valiosa, click na mãozinha!!

Veja...
viewtopic.php?f=9&t=3784

Att..

 
Postado : 22/03/2012 6:41 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

OK Alexandrevba,

já agradeci a vc e ao Mauro Coutinho.

Mas nao encerrei o tópico pq ainda tô apanhando feio pra fazer a consulta de outro arquivo...

 
Postado : 23/03/2012 1:41 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde!!

Leandro, obrigado pelo retorno e sinta se a vontade, desde que não se esqueça.. :lol:
Abraços e at+++ ;)
Att

 
Postado : 24/03/2012 9:41 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

leandro, segue o modelo de Filtragem com dois arquivo :
Arquivo de Consulta, e
Arquivo com o BD dos CPFs.

Veja as Observações na Rotina, conforme solicitou, a partir do Arquivo "Consulta_CPF.xls", filtramos com os CPFs que se encontram no arquivo "BD_CPF.xls".

O anexo contem os dois arquivos, descompacte no mesmo diretorio, para deixar o arquivo "BD_CPF.xls" em diretorio diferente, veja a obs na rotina "Sub DefinePlanilhaDados()".

Anexo atualizado em 07/10/2015
Tags para Pesquisa
Filtro Avançado : Filtrar a partir de um segundo arquivo
AdvancedFilter To Another Workbook

Faça os testes e qq duvida retorne.

Obs: Fiz no excel 2003, pq meu 2007 deu problema, mas faça os testes e salve na v2007 para ver se não tem nenhum problema, depois que eu reinstalar a v2007 farei os testes tambem.

[]s

 
Postado : 24/03/2012 11:15 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Mauro,

Funcionou perfeitamente após algumas adaptações, entretanto fiquei com as seguintes dúvidas:

O meu arquivo banco de dados chama-se: BANCO DE DADOS.xlsm, e nao consegui fazer funcionar com esse nome, o que será que ocorre? Será o "espaço" entre os nomes do arquivo? Tive que renomeá-lo para BANCO.xlsm e ai após alterar tb o codigo funcionou legal, mas será que tem como funcionar com o nome original BANCO DE DADOS.xlsm, pois outras planilhas já buscam dados nele por esse nome.

Eu retirei a COMBO onde apareciam os nomes dos CPFs cadastrados e deixei em branco, para inserir o CPF a ser procurado digitando-o. Ai ocorre que, quando se busca um CPF que nao está cadastrado, por óbvio nada aparece no resultado do filtro, mas nessa situação, o botão de LIMPAR deixa de funcionar e nao APAGA o campo onde digita-se o criterio da busca, tem como corrigir?

Mais uma vez obrigado.

 
Postado : 27/03/2012 3:17 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Leandro, tirando esta parte "após algumas adaptações", que não sei quais foram, as outras obs não intereferem em nada, reinstalei o 2007 e fiz os testes conforme sitou e funcionou corretamente.

O meu arquivo banco de dados chama-se: BANCO DE DADOS.xlsm, e nao consegui fazer funcionar com esse nome, o que será que ocorre?
Salvei o arquivo "BD_CPF.xls" com o nome e a extensão que citou e não tive problema, é dado alguma msg de erro ? Verificou se ajustou todas as referencias a este arquivo ?

o botão de LIMPAR deixa de funcionar e nao APAGA o campo onde digita-se o criterio da busca, tem como corrigir?
Para acertar isto adicione a linha em negrito na rotina LimpaResultados :

If Range("A" & sRowConsulta).Value = "" Then
Range("A2").ClearContents
Exit Sub
End If

Abaixo a linha que alterei no teste com o nome do arquivo que citou :
Alterei de :
ARQUIVO_DADOS = "BD_CPF.xls"
para
ARQUIVO_DADOS = "BANCO DE DADOS.xlsm"

Como não tive problemas verifique melhor se não digitou nada errado, ou, nas adaptações que fez não alterou as referencias à aba BD e os ranges nomeados.

[]s

 
Postado : 27/03/2012 5:56 pm
Página 1 / 2