Skip to main content

Como fazer uma procura vertical (vlookup) e concatenar múltiplos valores correspondentes no Excel?

Author: Xiaoyang Last Modified: 2025-08-06

Ao usar a função VLOOKUP no Excel, ela geralmente retornará apenas o primeiro valor correspondente que encontrar para um dado critério de pesquisa. No entanto, há muitos cenários comuns onde você pode precisar recuperar e combinar todos os valores correspondentes associados a uma chave específica, como listar todos os alunos em uma turma ou todos os produtos associados a uma determinada categoria. Como a função VLOOKUP padrão é limitada nesse aspecto, você pode se perguntar como alcançar a capacidade de procurar e concatenar múltiplos resultados correspondentes em uma única célula. Abaixo, exploraremos vários métodos práticos e eficientes para realizar essa tarefa, adequados para diferentes versões do Excel e preferências de usuário.


Procurar verticalmente (Vlookup) e concatenar múltiplos valores correspondentes com as funções TEXTJOIN e FILTER

Se você está usando o Excel 365 ou Excel 2021, a combinação das funções TEXTJOIN e FILTER fornece uma abordagem eficiente baseada em fórmulas para procurar verticalmente e concatenar todos os valores correspondentes. Essa solução é especialmente adequada para conjuntos de dados dinâmicos e atualizados, pois atualizará automaticamente o resultado quando os dados de origem mudarem. É melhor aplicada quando a sua versão do Excel suporta a função FILTER, que é exclusiva das versões mais recentes do Office.

Na célula de destino, insira a seguinte fórmula e, em seguida, arraste a fórmula para baixo se desejar aplicá-la a outras linhas também. Todos os valores correspondentes serão extraídos e combinados em uma célula. Veja a captura de tela:

=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, ""))

vlookup and concatenate multiple values with TEXTJOIN and FILTER Functions

Explicação desta fórmula:
  1. FILTER($B$2:$B$16, $A$2:$A$16=D2, ""): Esta parte da fórmula verifica cada valor em $A$2:$A$16; se ele corresponder ao valor em D2, o valor correspondente em $B$2:$B$16 será incluído no array de resultados.
    • $B$2:$B$16: O intervalo de onde os valores correspondentes serão recuperados.
    • $A$2:$A$16=D2: A condição sob a qual os valores são selecionados — apenas aquelas linhas onde $A$2:$A$16 for igual ao conteúdo em D2 serão processadas.
  2. TEXTJOIN(", ", TRUE, ...): Esta função pega a saída da função FILTER (um array de correspondências) e as concatena em uma única sequência de texto, separada pelo delimitador especificado (vírgula e espaço), enquanto ignora automaticamente entradas vazias.
    • ", ": Define vírgula e espaço como separador; você pode alterar esse símbolo conforme necessário, por exemplo, use ponto e vírgula ou quebras de linha.
    • TRUE: Garante que células vazias sejam ignoradas no processo de combinação, para que você obtenha uma saída formatada de maneira organizada.

Nota especial: Este método requer Excel 365 ou 2021 e não funciona em versões mais antigas (por exemplo, Excel 2019, 2016 ou anteriores). Sempre verifique sua versão do Excel antes de aplicar.

Dica: Se o valor de pesquisa (por exemplo, D2) mudar ou itens correspondentes adicionais forem adicionados à faixa de dados, o resultado será atualizado automaticamente sem etapas extras necessárias.

Limitações potenciais: Em grandes conjuntos de dados, o tempo de cálculo da fórmula pode aumentar. Além disso, os usuários devem garantir que não haja células mescladas nos intervalos de pesquisa ou resultados, pois isso pode causar erros na fórmula.


Procurar verticalmente e concatenar múltiplos valores correspondentes com Kutools para Excel

Se você achar métodos de fórmulas embutidas complicados ou sua versão do Excel não suporta funções avançadas como TEXTJOIN e FILTER, o Kutools para Excel oferece uma solução gráfica amigável ao usuário. O recurso Pesquisa Um-para-Muitos no Kutools permite que você procure e concatene múltiplos resultados correspondentes em poucos passos, tornando-o adequado tanto para iniciantes quanto para usuários avançados. Com o Kutools, não há necessidade de escrever fórmulas ou códigos complicados, e é especialmente útil ao lidar com grandes ou variáveis conjuntos de dados que exigem pesquisas repetidas e agregações.

Kutools para Excel oferece mais de 300 recursos avançados para simplificar tarefas complexas, aumentando a criatividade e a eficiência. Integrado com capacidades de IA, o Kutools automatiza tarefas com precisão, tornando a gestão de dados fácil e eficiente. Mais informações sobre o Kutools para Excel...  Teste gratuito...

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 configuração. Dentro dessa caixa, você pode configurar rapidamente suas opções de pesquisa e saída usando os seguintes passos:

  1. Selecione suas células de saída alvo para os resultados concatenados e as células contendo os valores que deseja pesquisar;
  2. Indique o intervalo da tabela que contém tanto a chave de pesquisa quanto as colunas de resultados;
  3. Especifique qual coluna contém as chaves de pesquisa (Coluna Chave) e a coluna cujos valores serão concatenados (Coluna de Retorno);
  4. Clique no botão OK para confirmar suas configurações e processar os dados.
     specify the options in the dialog box

Resultado: O Kutools agora exibirá todos os valores correspondentes e concatenados em sua célula de saída selecionada. Veja a captura de tela:
concatenated based on the criteria by kutools

Este método é altamente recomendado para aqueles que preferem trabalhar a partir da interface do Excel sem fórmulas ou códigos complexos. Ele também reduz a probabilidade de erros de fórmula e melhora a produtividade ao lidar com tarefas repetitivas de pesquisa e concatenação.


Procura vertical e concatenação de múltiplos valores correspondentes com Função Definida pelo Usuário

Para usuários proficientes em VBA (Visual Basic for Applications), ou aqueles que usam versões mais antigas do Excel que não têm suporte para arrays dinâmicos ou função FILTER, você pode criar uma Função Definida pelo Usuário personalizada (UDF) para alcançar a concatenação flexível de múltiplos resultados. Este método é universalmente compatível com todas as versões do Excel e pode ser personalizado para símbolos de separação específicos ou condições.

1. Pressione e mantenha as teclas ALT + F11 para abrir a janela Microsoft Visual Basic for Applications.

2. Clique em Inserir > Módulo e cole o seguinte código na Janela de Módulo.

Código VBA: Procurar verticalmente e concatenar múltiplos valores correspondentes em uma 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. Salve e feche o editor VBA. Volte para sua planilha e use esta UDF inserindo a fórmula: =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) em uma célula em branco onde você deseja seu resultado. Arraste a alça de preenchimento para baixo para copiar a fórmula para outras células, conforme necessário. Todos os valores correspondentes com base em um valor específico serão retornados e concatenados em uma célula, separados por vírgula e espaço. Veja a captura de tela:

concatenated based on the criteria by vba

Explicação desta fórmula:
  • D2: O valor de pesquisa a ser correspondido dentro de seu conjunto de dados (LookupValue).
  • A2:A16: O intervalo onde a função busca o valor de pesquisa (LookupRange).
  • B2:B16: O intervalo contendo os valores a serem concatenados quando o valor de pesquisa corresponde (ReturnRange).

Procura vertical e concatena múltiplos valores correspondentes com código VBA

Para cenários que exigem uso repetitivo ou para aqueles que desejam evitar funções personalizadas nas células da planilha, você pode usar uma macro VBA pronta para concatenar resultados diretamente. Este método funciona bem em ambientes compartilhados onde nem todos os usuários podem ter a mesma versão ou complementos.

1. Clique em Ferramentas de Desenvolvimento > Visual Basic para abrir o editor VBA.

2. Na janela VBA, clique em Inserir > Módulo, depois 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 Run button botão para executar a macro. As caixas de entrada solicitarão que você selecione o intervalo de dados, intervalo de pesquisa, intervalo de resultados. O resultado concatenado é então exibido diretamente nas células de saída selecionadas.

Essa abordagem de macro é particularmente útil se você frequentemente realiza várias buscas de concatenação com diferentes valores, pois evita encher a planilha com chamadas de UDF.

Você pode facilmente ajustar o delimitador no código, se necessário, e estender a macro para gerar resultados em uma célula ou arquivo de acordo com seu fluxo de trabalho.

Concatenar múltiplos valores correspondentes no Excel é possível usando várias abordagens, cada uma com benefícios específicos dependendo da sua situação. Seja você escolher fórmulas de matriz dinâmica, complementos como Kutools para Excel ou métodos baseados em VBA, você melhorará sua capacidade de analisar e exibir dados agrupados de forma eficiente. Dependendo do tamanho e complexidade do seu conjunto de dados, considere qual abordagem oferece o melhor desempenho e facilidade de manutenção para você ou sua equipe. Nas operações diárias, verifique a consistência dos dados, evite células mescladas e verifique os intervalos de referência para obter os melhores resultados. Se você encontrar erros nos cálculos da fórmula, verifique novamente se seus intervalos correspondem aos dados e se você está usando o método correto de entrada da fórmula para sua versão do Excel.

Para técnicas mais avançadas do Excel e uma ampla gama de guias práticas de como fazer, visite nossa extensa biblioteca de tutoriais.

Melhores Ferramentas de Produtividade para Office

🤖 Kutools AI Aide: Revolucione a análise de dados com base em: Execução Inteligente|Gerar Código |Criar Fórmulas Personalizadas|Analisar Dados e Gerar Gráficos |Acionar Funções Aprimoradas
Recursos populares: Encontrar, Destacar ou Marcar Duplicados|Excluir Linhas em Branco|Combinar Colunas ou Células sem perder dados| Arredondar...
Super PROC: PROC com múltiplos critérios|PROC com múltiplos valores|Procura em várias planilhas|Correspondência Fuzzy....
Lista Suspensa Avançada: Crie rapidamente Lista Suspensa|Lista Suspensa Dependente|Lista Suspensa com Múltipla Seleção....
Gerenciador de Colunas: Adicionar um número específico de colunas |Mover Colunas |Alternar o Estado de Visibilidade de Colunas Ocultas| Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco|Visualização de Design|Barra de fórmulas aprimorada|Gerenciador de Pasta de Trabalho & Planilha|Biblioteca de AutoTexto|Selecionador de Data|Mesclar Dados |Criptografar/Descriptografar Células|Enviar Email por Lista|Super Filtro|Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ... ) |Mais de50 Tipos de Gráficos (Gráfico de Gantt, ... ) |Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ... ) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ... ) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ... ) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ... ) |... e muito mais
Use o Kutools no idioma de sua preferência – compatível com Inglês, Espanhol, Alemão, Francês, Chinês e mais de40 outros!

Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência sem igual. Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo.Clique aqui para obter o recurso que você mais precisa...


Office Tab traz interface de abas para o Office e facilita muito seu trabalho

  • Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas abas da mesma janela, em vez de novas janelas.
  • Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!