Como procurar e concatenar vários valores correspondentes no Excel?
Ao utilizar o VLOOKUP no Excel, a função devolve apenas o primeiro valor correspondente encontrado para um determinado critério de procura. Contudo, em muitos cenários comuns — como listar todos os alunos de uma turma ou todos os produtos de uma categoria — é necessário obter e combinar todos os valores associados a uma mesma chave. Como o VLOOKUP padrão não permite ir além do primeiro resultado, surge naturalmente a pergunta: como realizar uma procura que concatene múltiplos resultados correspondentes numa única célula? A seguir, exploramos métodos práticos e eficientes para alcançar este objetivo, adaptados a diferentes versões do Excel e às preferências dos utilizadores.

Procurar e concatenar vários valores correspondentes no Excel
Procurar e concatenar vários valores correspondentes com as funções TEXTJOIN e FILTER
Se estiver a utilizar o Excel 365 ou o Excel 2021, a combinação das funções TEXTJOIN e FILTER proporciona uma solução eficiente, baseada em fórmulas, para localizar e concatenar todos os valores correspondentes. Esta abordagem é ideal para conjuntos de dados dinâmicos e em constante atualização, já que reflete automaticamente as alterações sempre que os Dados de Origem forem modificados. É particularmente recomendada quando a sua versão do Excel inclui suporte à função FILTER, disponível exclusivamente nas versões mais recentes do Office.
Na célula de destino, introduza a seguinte fórmula e arraste-a para baixo se quiser aplicá-la a outras linhas. Todos os valores correspondentes são extraídos e combinados numa única célula. Veja a imagem:
=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, "")) 
- FILTER($B$2:$B$16, $A$2:$A$16=D2, «»)Esta parte da fórmula verifica cada valor no intervalo $A$2:$A$16 e, se corresponder ao valor em D2, inclui o valor correspondente de $B$2:$B$16 na matriz de resultados.
- $B$2:$B$16O intervalo a partir do qual serão obtidos os valores correspondentes.
- $A$2:$A$16=D2A condição segundo a qual os valores são selecionados — apenas as linhas em que $A$2:$A$16 for igual ao conteúdo de D2 serão processadas.
- TEXTJOIN(", ", TRUE, ...): Esta função recebe o resultado da função FILTER (uma matriz de correspondências) e concatena-os numa única cadeia de texto, separada pelo delimitador especificado (vírgula e espaço), ignorando automaticamente entradas vazias.
- ",": Define a vírgula e o espaço como separador; pode alterar este símbolo conforme necessário, por exemplo, utilizar ponto e vírgula ou quebras de linha.
- TRUE: Garante que as células vazias sejam ignoradas no processo de combinação, obtendo assim um resultado formatado de forma limpa.
Nota especial: Este método exige Excel 365 ou 2021 e não é compatível com versões anteriores (por exemplo, Excel 2019, 2016 ou anteriores). Verifique sempre a sua versão do Excel antes de aplicar.
Dica: Se o valor que está a procurar (por exemplo, D2) mudar ou forem adicionados novos itens ao Intervalo de Dados que correspondam à sua pesquisa, o resultado é atualizado automaticamente — sem necessidade de qualquer passo adicional.
Limitações potenciais: Em conjuntos de dados muito grandes, o tempo de cálculo da fórmula pode aumentar. Além disso, os utilizadores devem garantir que não existem células mescladas nos intervalos de procura ou de resultados, pois estas podem causar erros na fórmula.
Procurar e concatenar vários valores correspondentes com o Kutools para Excel
Se acha os métodos com fórmulas incorporadas complicados ou se a sua versão do Excel não suportar funções avançadas como TEXTJOIN e FILTER, o Kutools para Excel oferece uma solução gráfica intuitiva. A funcionalidade Pesquisa um-para-muitos do Kutools permite-lhe encontrar e concatenar múltiplos resultados correspondentes em apenas alguns passos, sendo ideal tanto para principiantes como para utilizadores avançados. Com o Kutools, não precisa de escrever fórmulas ou códigos complexos — uma vantagem especialmente útil ao trabalhar com conjuntos de dados grandes ou variáveis que exijam procuras e agregações repetidas.
Após instalar o Kutools para Excel, siga os passos abaixo:
Clique em Kutools > Super PROC > Pesquisa um-para-muitos (retornar vários resultados) para abrir a caixa de diálogo de configuração. Nesta caixa de diálogo, pode configurar rapidamente as definições de pesquisa e saída seguindo os passos seguintes:
- Selecione as células de saída onde pretende os resultados concatenados e as células que contêm os valores que deseja procurar;
- Indique o intervalo da tabela que contém tanto as colunas com as chaves de procura como os resultados;
- Especifique qual coluna contém as chaves de procura (Coluna Chave) e qual coluna contém os valores a concatenar (Coluna de retorno);
- Clique no botão OK para confirmar as definições e processar os dados.

Resultado: O Kutools irá agora apresentar todos os valores correspondentes concatenados na célula de saída selecionada. Veja a imagem:
Este método é altamente recomendado para quem prefere trabalhar diretamente na interface do Excel, sem recorrer a fórmulas ou códigos complexos. Reduz ainda a probabilidade de erros nas fórmulas e potencia a produtividade ao lidar com tarefas repetitivas de procura e concatenação.
Procurar e concatenar vários valores correspondentes com Função Definida pelo Utilizador
Para utilizadores proficientes em VBA (Visual Basic for Applications) ou para quem utiliza versões mais antigas do Excel, que não suportam matrizes dinâmicas nem a função FILTRAR, é possível criar uma Função Definida pelo Utilizador (UDF) personalizada para obter uma concatenação flexível de múltiplos resultados. Este método é compatível com todas as versões do Excel e pode ser facilmente adaptado a separadores ou condições específicas.
1. Mantenha premidas as teclas ALT + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o seguinte código na janela do módulo.
Código VBA: Procurar e concatenar vários valores correspondentes numa célula
Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
Dim Cell As Range
Dim Result As String
Result = ""
For Each Cell In LookupRange
If Cell.Value = LookupValue Then
Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
End If
Next Cell
If Result <> "" Then
Result = Left(Result, Len(Result) - Len(Delimiter))
End If
ConcatenateMatches = Result
End Function
3. Guarde e feche o editor do VBA. Regresse à sua folha de cálculo e utilize esta UDF introduzindo a fórmula: =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) numa célula vazia onde pretende obter o resultado. Arraste a alça de preenchimento para baixo para aplicar a fórmula a outras células, conforme necessário. Todos os valores correspondentes com base num valor específico de procura serão devolvidos e concatenados numa única célula, separados por vírgula e espaço. Veja a imagem:

- D2: O valor a procurar e comparar no conjunto de dados (LookupValue).
- A2:A16: O intervalo onde a função procura o valor de pesquisa (LookupRange).
- B2:B16: O intervalo que contém os valores a concatenar quando o valor de procura corresponde (ReturnRange).
Procurar e concatenar vários valores correspondentes com código VBA
Para cenários que exijam utilização repetida ou para quem pretenda evitar funções personalizadas nas células da folha de cálculo, pode recorrer a uma macro VBA pronta a usar para concatenar diretamente os resultados. Este método revela-se especialmente eficaz em ambientes partilhados, onde nem todos os utilizadores dispõem da mesma versão do Excel ou dos mesmos extras instalados.
1. Clique em Ferramentas de Programador > Visual Basic para abrir o editor VBA.
2. Na janela do VBA, clique em Inserir > Módulo e cole este código no módulo:
Sub VLookupAndConcatenate()
Dim ws As Worksheet
Dim dataRange As Range, lookupRange As Range, resultRange As Range
Dim dict As Object
Dim i As Long, lastRow As Long
Dim lookupValue As Variant, result As String
Dim delimiter As String
delimiter = ", "
Set dict = CreateObject("Scripting.Dictionary")
Set ws = ActiveSheet
On Error Resume Next
Set dataRange = Application.InputBox( _
Prompt:="Please select the data range (contains lookup column and result column)", _
Title:="Select Data Range", _
Type:=8)
On Error GoTo 0
If dataRange Is Nothing Then Exit Sub
On Error Resume Next
Set lookupRange = Application.InputBox( _
Prompt:="Please select the lookup range (single column)", _
Title:="Select Lookup Range", _
Type:=8)
On Error GoTo 0
If lookupRange Is Nothing Then Exit Sub
On Error Resume Next
Set resultRange = Application.InputBox( _
Prompt:="Please select the starting cell for results output", _
Title:="Select Output Location", _
Type:=8)
On Error GoTo 0
If resultRange Is Nothing Then Exit Sub
resultRange.Resize(lookupRange.Rows.Count, 1).ClearContents
For i = 1 To dataRange.Rows.Count
lookupValue = dataRange.Cells(i, 1).Value
If Not dict.Exists(lookupValue) Then
dict.Add lookupValue, dataRange.Cells(i, 2).Value
Else
dict(lookupValue) = dict(lookupValue) & delimiter & dataRange.Cells(i, 2).Value
End If
Next i
For i = 1 To lookupRange.Rows.Count
lookupValue = lookupRange.Cells(i, 1).Value
If dict.Exists(lookupValue) Then
resultRange.Cells(i, 1).Value = dict(lookupValue)
Else
resultRange.Cells(i, 1).Value = "Not Found"
End If
Next i
MsgBox "Operation completed! Processed " & lookupRange.Rows.Count & " lookup values.", vbInformation
End Sub
3. Clique no botão
para executar a macro. Ser-lhe-ão apresentadas caixas de diálogo que o guiarão na seleção do seu Intervalo de Dados, do intervalo de procura e do intervalo de resultados. O resultado concatenado será então exibido diretamente nas células de saída selecionadas.
Esta abordagem com macro é especialmente útil se realizar frequentemente pesquisas de concatenação múltipla com valores diferentes, pois evita sobrecarregar a folha de cálculo com chamadas à UDF.
Pode ajustar facilmente o delimitador no código, se necessário, e expandir a macro para exportar os resultados diretamente para uma célula ou ficheiro, conforme o seu fluxo de trabalho.
É possível concatenar múltiplos valores correspondentes no Excel utilizando várias abordagens, cada uma com benefícios específicos consoante a sua situação. Quer opte por fórmulas de matrizes dinâmicas, complementos como Kutools para Excel ou métodos baseados em VBA, irá melhorar a sua capacidade de analisar e apresentar dados agrupados de forma eficiente. Consoante o tamanho e a complexidade do seu conjunto de dados, considere qual abordagem oferece o melhor desempenho e facilidade de manutenção para si ou para a sua equipa. Nas operações diárias, verifique a consistência dos dados, evite Mesclado e confirme os intervalos de referência para obter os melhores resultados. Se encontrar erros nos cálculos das fórmulas, verifique novamente se os seus intervalos correspondem aos dados e se está a utilizar o método correto de introdução da fórmula para a sua versão do Excel.
Para técnicas mais avançadas no Excel e uma vasta gama de guias práticos passo a passo, visite a nossa extensa biblioteca de tutoriais.
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos
