14 de agosto de 2016 Atualizado 08 de julho de 2026 6 min de leitura
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.
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.
Crie uma planilha na mesma Pasta de Trabalho e renomeie-a como Filtro, é nesta planilha que iremos aplicar o filtro e filtrar os dados.
Copie o cabeçalho da sua lista de dados na planilha Base e cole em A1 na planilha Filtro.
Selecione a célula A7 na planilha Filtro.
Clique na guia Dados e no grupo Classificar e Filtrar selecione o ícone Avançado.
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.
Agora basta clicar o botão OK para que os dados sejam filtrados automaticamente na lista. Veja que foram listados todos os dados automaticamente.
Para filtrar os dados basta digitar nas células de A2 á F2 os dados que deseja filtrar, inclusive com coringas.
* => 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.
=<> => 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.
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.
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.
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.
Copie o cabeçalho da sua lista de dados na planilha Base e cole em A1 na planilha Filtro.
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.
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.
Clique na célula A7
Clique na guia Dados e no grupo Classificar e Filtrar selecione o ícone Avançado.
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.
Agora basta clicar o botão OK para que os dados sejam filtrados automaticamente na lista. Veja que foram listados todos os dados automaticamente.
Clique na guia Desenvolvedor e no botão Parar gravação.
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.
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.
Clique sobre a imagem desenhada na tela e digite Filtrar ou Filtro automático, como preferir.
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.
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.
Download — baixe aqui: Filtrar dados de uma planilha na outra
Abraço
Marcos Rieper
Curso Excel Completo – Do Básico ao VBA
Quer aprender Excel do Básico, passando pela Avançado e chegando no VBA? Clique na imagem abaixo:
Principais recursos
Confira o que este material oferece para você.
Organização por data e etapas
Classificação automática
Ranking e destaques
Fluxos e etapas automáticas
Dashboard com indicadores
Atualização automática por fórmulas
Perguntas frequentes
O material é realmente gratuito?
Sim. O acesso é gratuito e não exige cadastro.
Preciso ter o Excel instalado?
Recomendamos o Excel 2013 ou superior para todos os recursos.
Como faço para receber atualizações?
As atualizações são automáticas dentro da própria planilha.
Funciona no Excel do Mac?
Sim, funciona no Excel para Windows e para Mac.
Funciona no celular?
É possível visualizar no app do Excel; a edição completa é no computador.