O PROCV tem um limite que pega muita gente: quando o valor procurado aparece várias vezes na tabela, ele devolve só a primeira ocorrência e ignora o resto. Se o cliente tem quatro pedidos, o PROCV mostra um.
Neste artigo você vai ver como trazer todas as ocorrências de um valor repetido no Excel, com quatro jeitos diferentes: a função FILTRO (Excel 365 e 2021), tudo numa célula só com UNIRTEXTO, PROCV com coluna auxiliar (funciona em qualquer versão) e ÍNDICE com AGREGAR, sem coluna auxiliar. Tem planilha pronta para baixar no fim.
Neste artigo (12 seções)
- Resumo rápido
- Por que o PROCV só traz o primeiro valor
- A tabela de exemplo
- Método 1: FILTRO (Excel 365, 2021 e 2024)
- Método 2: todas as ocorrências numa célula só
- Método 3: PROCV com coluna auxiliar (qualquer versão do Excel)
- Método 4: ÍNDICE e AGREGAR, sem coluna auxiliar
- Extras: pegar só a 2ª ocorrência, contar e somar
- Qual método usar
- Erros comuns e como corrigir
- Planilha para baixar
- Perguntas frequentes
Resumo rápido
Se o seu Excel é o 365, 2021 ou 2024, troque o PROCV por esta fórmula:
=FILTRO(A2:E13;B2:B13=H2;"Nenhum pedido")
- A2:E13 é a tabela inteira que você quer trazer.
- B2:B13=H2 é a condição: linhas em que o cliente é igual ao da célula H2.
- “Nenhum pedido” é o texto que aparece se o cliente não tiver nenhuma linha.
A fórmula é digitada em uma célula só e o resultado se espalha para baixo, uma linha para cada ocorrência. Se o seu Excel é mais antigo, vá direto para o método com coluna auxiliar.
Por que o PROCV só traz o primeiro valor
O PROCV percorre a primeira coluna da tabela de cima para baixo e para no primeiro valor que encontra. Ele não tem nenhum argumento para dizer “agora quero o segundo”. Por isso esta fórmula:
=PROCV(H2;B2:E13;3;0)
sempre devolve o produto do primeiro pedido do cliente, mesmo que ele tenha vários. Não é erro da fórmula: é assim que ela funciona. O PROCX tem o mesmo comportamento (a diferença é que ele pode procurar de baixo para cima e trazer a última ocorrência, mas continua sendo uma só).
A tabela de exemplo
Os exemplos usam uma lista de pedidos fictícia, nas colunas A a E. O cliente que vamos procurar fica na célula H2.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Pedido | Cliente | Data | Produto | Valor |
| 2 | 1001 | Mercado Bom Preço | 03/11/2026 | Arroz 5 kg (fardo) | R$ 389,50 |
| 3 | 1002 | Padaria Central | 03/11/2026 | Farinha de trigo 25 kg | R$ 142,00 |
| 4 | 1003 | Loja Alfa | 04/11/2026 | Café 500 g (caixa) | R$ 276,00 |
| 5 | 1004 | Mercado Bom Preço | 04/11/2026 | Feijão 1 kg (fardo) | R$ 214,80 |
| 6 | 1005 | Farmácia Vida | 05/11/2026 | Álcool 70% (caixa) | R$ 98,40 |
| 7 | 1006 | Padaria Central | 05/11/2026 | Açúcar 5 kg | R$ 63,90 |
| 8 | 1007 | Mercado Bom Preço | 06/11/2026 | Óleo de soja (caixa) | R$ 187,20 |
| 9 | 1008 | Loja Alfa | 06/11/2026 | Leite integral (caixa) | R$ 118,80 |
| 10 | 1009 | Padaria Central | 09/11/2026 | Manteiga 5 kg | R$ 245,00 |
| 11 | 1010 | Mercado Bom Preço | 09/11/2026 | Macarrão (fardo) | R$ 96,60 |
| 12 | 1011 | Farmácia Vida | 10/11/2026 | Papel toalha (fardo) | R$ 74,50 |
| 13 | 1012 | Loja Alfa | 10/11/2026 | Sabão em pó (caixa) | R$ 159,90 |
O Mercado Bom Preço aparece quatro vezes (pedidos 1001, 1004, 1007 e 1010). O PROCV traria só o arroz. O objetivo é trazer os quatro.
Método 1: FILTRO (Excel 365, 2021 e 2024)
É o jeito mais simples e o que eu recomendo para quem tem uma versão recente do Excel.
Passo a passo
- Digite o nome do cliente em H2 (na planilha para baixar, ele é escolhido numa lista suspensa).
- Copie os cabeçalhos da tabela para H5:L5, se quiser que o resultado tenha títulos.
- Em H6, digite a fórmula abaixo e tecle Enter:
=FILTRO(A2:E13;B2:B13=H2;"Nenhum pedido")
O resultado ocupa H6:L9 sozinho: as quatro linhas do Mercado Bom Preço, com pedido, cliente, data, produto e valor. Se você trocar o cliente em H2 para Padaria Central, aparecem três linhas; para Farmácia Vida, duas. Se a coluna da data aparecer como número, formate-a como data.
Trazer só uma coluna
Para listar apenas os produtos, troque o primeiro argumento pela coluna desejada:
=FILTRO(D2:D13;B2:B13=H2;"Nenhum pedido")
Resultado para o Mercado Bom Preço: Arroz 5 kg (fardo), Feijão 1 kg (fardo), Óleo de soja (caixa) e Macarrão (fardo), um em cada linha.
A função FILTRO tem muitos outros usos, como filtrar por duas condições ou por período de datas. Veja o guia completo da função FILTRO no Excel.
Método 2: todas as ocorrências numa célula só
Às vezes você não quer uma lista, e sim todos os valores juntos, separados por vírgula, numa única célula. Para isso, coloque o FILTRO dentro do UNIRTEXTO:
=UNIRTEXTO(", ";VERDADEIRO;FILTRO(D2:D13;B2:B13=H2;""))
Resultado: Arroz 5 kg (fardo), Feijão 1 kg (fardo), Óleo de soja (caixa), Macarrão (fardo).
- “, “ é o separador entre os itens (pode ser
" / ","; "etc.). - VERDADEIRO manda ignorar células vazias.
- O “” no fim do FILTRO evita o erro #CALC! quando o cliente não tem pedidos: a célula fica vazia.
No Excel 2019, que tem UNIRTEXTO mas não tem FILTRO, use SE no lugar do FILTRO e confirme com Ctrl+Shift+Enter:
=UNIRTEXTO(", ";VERDADEIRO;SE(B2:B13=H2;D2:D13;""))
Método 3: PROCV com coluna auxiliar (qualquer versão do Excel)
Este é o truque clássico para quem usa Excel 2010, 2013, 2016 ou 2019. A ideia é criar uma coluna que transforma cada ocorrência repetida numa chave única: “Mercado Bom Preço-1”, “Mercado Bom Preço-2”, “Mercado Bom Preço-3” e assim por diante. Aí o PROCV consegue achar cada uma separadamente.
Como o PROCV só procura na primeira coluna da tabela, a coluna auxiliar precisa ficar à esquerda dos dados. Neste exemplo, ela está na coluna A e os dados foram para B:F (Pedido em B, Cliente em C, Data em D, Produto em E e Valor em F). O cliente procurado fica em I2.
Passo 1: crie a chave na coluna A
Em A2, digite e arraste até A13:
=C2&"-"&CONT.SE($C$2:C2;C2)
O CONT.SE conta quantas vezes o cliente apareceu da primeira linha até a linha atual. Repare no intervalo $C$2:C2: o início é fixo e o fim anda junto quando a fórmula é arrastada. O resultado fica assim:
| A (chave) | C (cliente) | |
|---|---|---|
| 2 | Mercado Bom Preço-1 | Mercado Bom Preço |
| 3 | Padaria Central-1 | Padaria Central |
| 4 | Loja Alfa-1 | Loja Alfa |
| 5 | Mercado Bom Preço-2 | Mercado Bom Preço |
| 8 | Mercado Bom Preço-3 | Mercado Bom Preço |
| 11 | Mercado Bom Preço-4 | Mercado Bom Preço |
Passo 2: busque a 1ª, a 2ª, a 3ª ocorrência…
Em I6, digite a fórmula que traz o número do pedido:
=SEERRO(PROCV($I$2&"-"&LINS($I$6:I6);$A$2:$F$13;2;0);"")
- LINS($I$6:I6) vale 1 na primeira linha. Ao arrastar para baixo, vira 2, 3, 4… Então a fórmula procura “Mercado Bom Preço-1”, depois “Mercado Bom Preço-2” e assim por diante.
- 2 é a coluna Pedido dentro de A:F. Nas colunas ao lado, use a mesma fórmula trocando o 2 por 4 (Data), 5 (Produto) e 6 (Valor).
- SEERRO deixa a célula vazia quando as ocorrências acabam. Mais sobre ela no artigo da função SEERRO.
Arraste as fórmulas para baixo por tantas linhas quanto o maior número de repetições possível (na planilha de exemplo, 12 linhas). Para o Mercado Bom Preço aparecem os pedidos 1001, 1004, 1007 e 1010; as linhas restantes ficam em branco.
Se você não quer que o número da coluna fique fixo na fórmula, dá para combinar com o CORRESP, como mostrado em PROCV com CORRESP.
Método 4: ÍNDICE e AGREGAR, sem coluna auxiliar
Se você não pode mexer na estrutura da tabela, existe uma fórmula que funciona a partir do Excel 2010 sem coluna extra e sem Ctrl+Shift+Enter. Ela é mais longa, mas dá para copiar e adaptar. Com os dados em A2:E13 e o cliente em H2, digite em H6:
=SEERRO(ÍNDICE($A$2:$E$13;AGREGAR(15;6;(LIN($B$2:$B$13)-LIN($B$2)+1)/($B$2:$B$13=$H$2);LINS($H$6:H6));COLS($H$6:H6));"")
Depois arraste para a direita até a coluna L e para baixo até a linha 17. Como ela funciona:
- LIN($B$2:$B$13)-LIN($B$2)+1 gera a posição de cada linha na tabela: 1, 2, 3… 12.
- /($B$2:$B$13=$H$2) divide cada posição por VERDADEIRO (1) ou FALSO (0). Nas linhas de outros clientes, a divisão por zero gera erro.
- AGREGAR(15;6;…;k) é o MENOR (função 15) ignorando erros (opção 6). Ele devolve a 1ª, 2ª, 3ª… posição em que o cliente aparece.
- ÍNDICE pega a linha dessa posição, e COLS($H$6:H6) escolhe a coluna (1 = Pedido, 2 = Cliente… 5 = Valor) conforme você arrasta para a direita.
O resultado é o mesmo do FILTRO: as quatro linhas do Mercado Bom Preço.
Extras: pegar só a 2ª ocorrência, contar e somar
Só o 2º pedido do cliente (Excel 365/2021):
=SEERRO(ÍNDICE(FILTRO(D2:D13;B2:B13=H2);2);"Não tem 2º pedido")
Resultado: Feijão 1 kg (fardo). Troque o 2 por 3 para o terceiro. Nas versões antigas, use o método 3 procurando direto $I$2&"-2".
Quantas vezes o cliente aparece:
=CONT.SE(B2:B13;H2)
Resultado: 4.
Soma dos valores do cliente:
=SOMASE(B2:B13;H2;E2:E13)
Resultado: R$ 888,10. Mais exemplos de soma com condição em como somar no Excel.
Qual método usar
| Situação | Método |
|---|---|
| Excel 365, 2021, 2024 ou Excel para a web | 1 (FILTRO) |
| Quer tudo numa célula, separado por vírgula | 2 (UNIRTEXTO) |
| Excel 2010 a 2019, ou planilha que vai para pessoas com versões diferentes | 3 (PROCV com coluna auxiliar) |
| Versão antiga e não pode inserir coluna na tabela | 4 (ÍNDICE + AGREGAR) |
Erros comuns e como corrigir
1. #DESPEJAR! no FILTRO
O FILTRO precisa de espaço livre para espalhar o resultado. Se houver qualquer coisa digitada nas células abaixo ou ao lado, aparece #DESPEJAR!. Limpe a área de destino.
2. #CALC! quando o cliente não tem pedidos
Acontece quando o FILTRO não encontra nada e o terceiro argumento foi omitido. Coloque um texto como "Nenhum pedido" ou "" no fim da fórmula.
3. #NOME? ao usar FILTRO
Sua versão do Excel não tem a função FILTRO (Excel 2019 ou anterior). Use o método 3 ou o 4.
4. A coluna auxiliar mostra sempre “-1”
O cifrão do CONT.SE está errado. O certo é $C$2:C2: início fixo e fim livre. Se você escreveu C2:C2 ou $C$2:$C$2, a contagem não acumula.
5. Uma ocorrência não aparece
Quase sempre é diferença de digitação: um espaço a mais no fim do nome, acento diferente ou abreviação (“Mercado Bom Preco”). Para o Excel, são valores diferentes. Veja como resolver em PROCV não funciona: 9 causas comuns.
Planilha para baixar
A planilha tem três abas, uma para cada abordagem: FILTRO (com as variações de uma coluna, numa célula, 2ª ocorrência, contagem e soma), PROCV com coluna auxiliar e ÍNDICE com AGREGAR. Escolha outro cliente na lista suspensa e veja os resultados mudarem.
Baixar a planilha PROCV com valores repetidos (.xlsx)
A aba do FILTRO precisa do Excel 365, 2021 ou 2024; as outras duas funcionam a partir do Excel 2010 e no LibreOffice. Não tem macro. Download livre, sem cadastro.
Perguntas frequentes
O PROCV consegue trazer o segundo valor sozinho?
Não. O PROCV sempre para na primeira ocorrência. Para chegar na segunda, é preciso uma coluna auxiliar (método 3) ou outra função, como FILTRO ou ÍNDICE com AGREGAR.
O PROCX resolve valores repetidos?
Em parte. O PROCX também devolve uma única ocorrência, mas pode procurar de baixo para cima (modo de pesquisa -1) e trazer a última. Para trazer todas, use o FILTRO.
Dá para usar duas condições, como cliente e mês?
Dá. No FILTRO, multiplique as condições: =FILTRO(A2:E13;(B2:B13=H2)*(MÊS(C2:C13)=11);"Nenhum pedido"). O guia da função FILTRO tem outros exemplos com duas condições.
Funciona no Google Planilhas?
O Google Planilhas tem a função FILTER, mas sem o terceiro argumento (“se vazio”). Use =SEERRO(FILTER(A2:E13;B2:B13=H2);"Nenhum pedido"). Os métodos 3 e 4 também funcionam lá.
Isso cai em teste de Excel?
Cai, principalmente a versão com coluna auxiliar. Veja outros exercícios no teste de Excel para entrevista de emprego.
Ficou com alguma dúvida? Deixe nos comentários.
