Filtrar dados de uma planilha para outra Excel – Filtro avançado Excel

Sorteio de cursos 13.08.2016 2
Promoção – Sorteio de cursos Guia do Excel 13/08/2016
13 de agosto de 2016
Filtro automático ao digitar Excel
Planilha Filtro automático Excel ao digitar
20 de agosto de 2016

Filtrar dados de uma planilha para outra Excel – Filtro avançado Excel

É comum termos listas extensas de dados aonde temos que filtrar dados para realizarmos análises e tomarmos ações. Neste artigo você aprenderá a filtrar os dados de uma planilha do Excel em outra planilha de forma automática utilizando filtro avançado Excel e um simples VBA.

A lista

Os dados devem estar dispostos com cabeçalhos em formato de base de dados, ou seja, todos os dados devem estar concisos.

Por exemplo, em uma coluna na qual o cabeçalho seja nome do vendedor, ter apenas o nome do vendedor em todas as linhas abaixo deste cabeçalho e na coluna Nota fiscal, ter apenas os números das notas fiscais.

Além disso a regra do bom desenvolvimento com listas de dados no Excel sugere que você sempre coloque os dados a partir da linha 1, isso permite que os dados sejam trabalhados pelas suas colunas, não sendo necessária a seleção de listas, por exemplo, ao invés de A2:F500, que pode mudar com o aumento de dados, colocamos os dados a partir da linha 1 permitindo assim utilizar o range A:F e os dados do seu cálculo ou filtro não precisarão ser ajustados se forem inclusos.

Filtrar dados de uma planilha em outra Excel

No nosso exemplo criamos uma lista de vendas e renomeamos a planilha como Base.

Filtrar dados de uma planilha para outra Excel

Agora vamos ver como filtrar os dados de uma planilha para outra o Excel manualmente, no próximo tópico ensinaremos como automatizar. Siga os passos numerados para a realização da tarefa.

  1. Crie uma planilha na mesma Pasta de Trabalho e renomeie-a como Filtro, é nesta planilha que iremos aplicar o filtro e filtrar os dados.
  2. Copie o cabeçalho da sua lista de dados na planilha Base e cole em A1 na planilha Filtro.
  3. Selecione a célula A7 na planilha Filtro.
  4. Clique na guia Dados e no grupo Classificar e Filtrar selecione o ícone Avançado.
  5. Nas configurações do filtro avançado selecione a opção Copiar para outro local, no intervalo da lista selecione Base$A:$F, no intervalo de critérios selecione Filtro!$A$1:$F$2 e no Copiar para digite Filtro!$A$7:$F$7, é importante que seja selecionado neste campo a mesma quantidade de colunas que a base, para que os dados ao filtrar sejam todos trazidos.Filtrar dados de uma planilha em outra Excel 2
  6. Agora basta clicar o botão OK para que os dados sejam filtrados automaticamente na lista. Veja que foram listados todos os dados automaticamente.
  7. Para filtrar os dados basta digitar nas células de A2 á F2 os dados que deseja filtrar, inclusive com coringas.
    1. * => Utilize o coringa * para trazer os dados que começam com, terminam com, ou possuem algum determinado texto no meio. Por exemplo *ão, para trazer todos os nomes que terminam com ão, ou Jo* para trazer todos os textos que começam com Jo, ou ainda j*o para trazer todos os textos que começam com J e terminam com o. Se digitar apenas Jo ele também traz os dados de todos que começam com Jo, sem o uso do coringa.
    2. =<> => Utilize os coringas > (maior), < (menor) para que sejam trazidos valores maior ou menor do que um determinado valor, por exemplo <300, todos os valores menores que 300 ou >300 para todos os valores maiores que 300 ou ainda >=300 para um valor maior ou igual a 300.
    3. Para valores iguais você não precisa usar coringas apenas digitar diretamente o valor, por exemplo filtrar as vendas da vendedora Ana digitar apenas Ana no campo Vendedor e filtrar.

Importante, é necessário que toda vez que você for filtrar seja feito tudo novamente por padrão no Excel. No próximo tópico você verá como evitar de ter que digitar tudo novamente e executar automaticamente o filtro sempre que quiser por um botão.

Filtrar dados de uma planilha para outra Excel Automático VBA

Neste tópico você aprenderá a automatizar o processo de filtrar dados de uma planilha para outra no Excel utilizando VBA.

  1. Habilite a sua guia desenvolvedor caso ela não esteja habilitada. Para isso clique com o botão direito sobre qualquer Guia do Excel e selecione a opção Personalizar Faixa de Opções e no formulário de opções que segue marque a opção Desenvolvedor.Filtrar dados de uma planilha em outra Excel 3
  2. Exclua a planilha Filtro e inclua-a novamente, pois quando se aplica o filtro avançado o Excel cria automaticamente campos nomeados que precisamos apagar.
  3. Copie o cabeçalho da sua lista de dados na planilha Base e cole em A1 na planilha Filtro.
  4. Na guia Desenvolvedor clique no botão Gravar Macro, este botão irá criar códigos VBA para todas as ações que você fizer até concluir a gravação, permitindo automatizar estas ações.
  5. Na tela que segue digite no nome da macro lsFiltroAutomatico, ou qualquer outro nome que queira, e selecione Armazenar macro em a opção Esta pasta de trabalho, de modo que a macro seja salva na pasta que está utilizando no momento e clique em Ok. Cuidado para fazer apenas os passos abaixo, pois o gravador de macros está escrevendo o código para automatizar todas as tarefas seguintes.Filtrar dados de uma planilha em outra Excel 4
  6. Clique na célula A7
  7. Clique na guia Dados e no grupo Classificar e Filtrar selecione o ícone Avançado.
  8. Nas configurações do filtro avançado selecione a opção Copiar para outro local, no intervalo da lista selecione Base$A:$F, no intervalo de critérios selecione Filtro!$A$1:$F$2 e no Copiar para digite Filtro!$A$7:$F$7, é importante que seja selecionado neste campo a mesma quantidade de colunas que a base, para que os dados ao filtrar sejam todos trazidos.
  9. Filtrar dados de uma planilha em outra Excel 2Agora basta clicar o botão OK para que os dados sejam filtrados automaticamente na lista. Veja que foram listados todos os dados automaticamente.
  10. Clique na guia Desenvolvedor e no botão Parar gravação.
  11. Clique na guia Desenvolvedor no botão Visual Basic, será aberto o ambiente aonde foi escrito o código. O código escrito deve ser semelhante ao abaixo, veja os detalhes aonde ele aplica o filtro diretamente nas colunas A:F da base. Após isso pode fechar este ambiente e voltar ao Excel.Filtrar dados de uma planilha em outra Excel 5
  12. No Excel clique na guia Inserir e no botão Formas, selecione a forma de botão ou outra conforme desejar. Eu escolhi no nosso exemplo um formato retangular.
  13. Clique sobre a imagem desenhada na tela e digite Filtrar ou Filtro automático, como preferir.
  14. Clique com o botão direito sobre a imagem e selecione a opção Atribuir Macro e selecione a macro criada lsFiltroAutomatico e clique em OK.Filtrar dados de uma planilha em outra Excel 6
  15. Agora você já pode digitar os filtros e clicar no botão criado que os mesmos serão aplicados automaticamente sem a necessidade de fazer toda a operação de filtro novamente para filtrar dados de uma planilha para outra Excel automaticamente.Filtrar dados de uma planilha para outra Excel - Filtro avançado Excel

Abraço

Marcos Rieper


Clique aqui e leia mais sobre Excel VBA. https://www.guiadoexcel.com.br/vba/ O Guia do Excel foi criado por Marcos Rieper e oferece artigos, dicas, tutoriais e modelos de planilhas prontas. Aqui você encontra tudo sobre Excel, seja de nível básico, intermediário,  avançado e VBA. O Guia do Excel oferece diversos materiais completamente gratuitos para download. Navegue em nosso site e confira! Conheça também a nossa Loja do Excel https://loja.guiadoexcel.com.br/
Cursos

Curso Excel Completo – Curso Excel Básico + Curso Excel Avançado – Acesso Vitalício

R$218,00 R$179,00

COMPRAR
Cursos

Curso Excel Master – Curso Excel Básico + Curso Excel Avançado + Curso VBA Excel + LP – Acesso Vitalício

R$357,00 R$249,00

COMPRAR
Cursos

Curso Excel PRO – Curso Excel Avançado + Curso VBA Excel + Lógica de programação – Acesso Vitalício

R$258,00 R$199,00

COMPRAR
Cursos

Curso Excel Web – Curso VBA Excel + Lógica de programação + Curso Web Scraping VBA- Acesso Vitalício

R$388,90 R$309,00

COMPRAR

15 Comentários

  1. Ygor disse:

    Caso eu necessite atualizar frequentemente a minha planilha base ainda assim poderia usar esse procedimento?

  2. Renner Souza disse:

    Marcelo, boa tarde! Desculpe o textão e o local de exposição da dúvida.

    Tenho uma Pasta de trabalho do excel e dentro dela tenho duas planilhas “test1” e “test2”.
    Na “plan test1” tenho uma célula (C3) nela eu digito o numero de um determinado grupo de itens.
    Esses itens ficam listados na “plan test2” e alguns possuem o mesmo numero por se tratar de grupos.
    Funcionamento: Ao digitar um determinado numero em “C3 na plan test1” o codigo executa e filtra os itens na “plan test2” de acordo com o numero que digitei, depois disso o código copia o resultado do filtro na coluna F e cola os valores “plan test1 E3”.
    Porém, quando estou o resultado é vazio o código copia todos os itens da coluna.
    Preciso fazer que o código entenda que se o resultado do filtro for vazio ela não faça nada.

  3. jeferson disse:

    Ola. Estou procurando exatamente isso. Só que preciso de mais de um critério de filtragem. Já vi que quando passa de um ele não funciona. No caso eu quero filtrar varios vendedores. Ex. vendedor pedro, julio, adão. Existe esse meio de filtragem em modo automático?

  4. Jonathan disse:

    Galera,

    Gostaria de colocar uma condição, onde. Se existir o resultado “Inscrito” na coluna d execute uma dinâmica por exemplo, ou então gera msgbox. ( msgbox já fiz)

    obs. devido quantidade de linha, quero executar esta função para facilitar

    Podem ajudar?

  5. Bruno disse:

    Ótimo material,

    Eu só fiquei com dúvidas no início, não sabia que tinha que colocar um valor para procurar antes de iniciar o processo no filtro avançado!

    Mas consegui! muito obrigado!

  6. MATHEUS SILVA REICHERT disse:

    Eu consigo incluir informações na base registrando os campos no filtro ?

  7. João Paulo disse:

    Boa Tarde Marcos, muito obrigado pela aula “100%”. Poderia me ajudar, minha dificuldade é que na mesma pasta inseri outra planilha com o nome de base1 e inseri outra planilha com o nome de filtro1. Fiz o mesmo procedimento mas deu uma caixa de erro dizendo que o nome do campo é inválido. Qual a solução?
    Obrigado pela atenção!!!

  8. João Roberto Bonatti Filho disse:

    Boa tarde existe algum comando curinga que eu posso utilizar para não filtrar um nome da lista. Ex: João , Maria , Pedro, não filtrar os dado de Maria tentei utilizar “” porém não deu certo.

  9. Weliington santos do nascimento disse:

    boa tarde!
    não da para filtrar pela data de maior ou menor que a data ou entre duas data
    Ex. pesquisar do dias 01/05/2018 ao 10/05/2018

  10. Mikaella disse:

    Pessoal, preciso de uma ajuda!

    Tenho uma planilha de pedidos de compra, onde cadastro todos os produtos.
    Em outra planilha tenho meu pedido de compra formatado. Só que quando utilizo esse filtro ele dá um erro.
    Eu preciso filtrar pelo nome do fornecedor e preencher os demais campos do pedido de compra com essas informações.
    Alguém pode me ajudar?

    No aguardo!

    Valeu

  11. Jonatas Soares de Oliveira disse:

    Boa noite, se eu tiver na lista, Paulo Henrique, Paulo Fernando, Paulo andré, o filtro puxa todos os Paulos, como faço para o filtro puxar o nome completo, por exemplo somente o paulo Henrique.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Inscreva-se no nosso canal do Youtube!


Junte-se ao nosso canal do Youtube. Começamos em abril de 2016, mas já temos mais de 06:00 h de treinamentos gratuitos e este número irá aumentar. Vídeos novos todos os sábados.