Como procurar verticalmente e obter o último valor correspondente no Excel?
A função VLOOKUP do Excel é uma das ferramentas mais utilizadas para pesquisar dados em tabelas com base num critério específico. Por predefinição, contudo, o VLOOKUP apenas devolve o primeiro valor que corresponde ao critério de pesquisa num determinado conjunto de dados. Este comportamento constitui frequentemente uma limitação quando os seus dados contêm valores repetidos no intervalo de pesquisa e necessita extrair a última ocorrência de uma entrada correspondente. Esta necessidade surge comummente em cenários como o acompanhamento do estado mais recente, a identificação das vendas mais recentes de um cliente ou a localização da última entrada registada em listas cronológicas. Para ultrapassar esta limitação, o Excel oferece várias abordagens alternativas, recorrendo a funções como LOOKUP, XLOOKUP, INDEX e MATCH, bem como soluções amigáveis de terceiros, como o Kutools para Excel. Neste artigo, exploramos como funciona cada método, discutimos as suas aplicações práticas, destacamos os respetivos pontos fortes e limitações e partilhamos dicas operacionais para o ajudar a utilizar o VLOOKUP — ou alternativas adequadas — e obter facilmente o último valor correspondente.

Procurar verticalmente e devolver o último valor correspondente no Excel
Utilizar VLOOKUP e devolver o último valor correspondente com a função LOOKUP
Embora o VLOOKUP não consiga encontrar diretamente o último item correspondente, a função LOOKUP pode oferecer uma solução inteligente. A abordagem com LOOKUP é especialmente útil se o seu conjunto de dados não estiver ordenado e pretender uma solução baseada em fórmulas que funcione praticamente em todas as versões do Excel. Esta fórmula aproveita a forma como o LOOKUP trata matrizes e erros para identificar rapidamente a última ocorrência.
Para extrair o último valor correspondente utilizando a função PROCURAR, siga estes passos:
1. Selecione a célula onde pretende apresentar o último valor correspondente e introduza a seguinte fórmula:
=LOOKUP(2,1/($A$2:$A$12=E2),$C$2:$C$12) 2. Prima Enter. Se precisar de aplicar a fórmula a linhas adicionais, arraste a alça de preenchimento até ao intervalo pretendido. Desta forma, consegue realizar a procura da última correspondência para múltiplos valores de pesquisa sem esforço.

$A$2:$A$12é a coluna de pesquisa (critérios).E2é a célula que contém o valor a procurar.$C$2:$C$12é a coluna de retorno (resultados).
1/($A$2:$A$12=E2)gera uma matriz com o valor 1 onde a condição é verdadeira e erros#DIV/0!nos restantes locais.LOOKUP(2, ...)aproveita o facto de o LOOKUP ignorar erros e procurar o número 2 (que não está presente). O LOOKUP corresponde então ao último 1 na matriz e devolve o valor correspondente da matriz de resultados — obtendo assim o último valor correspondente.
Sugestões e Notas:
- Certifique-se de que os intervalos de procura e de retorno têm o mesmo tamanho e utilize referências absolutas ao copiar para baixo.
- Se a matriz de procura contiver células vazias ou erros, os resultados poderão ser afetados. Limpe os dados ou envolva-os com
IFERRORconforme necessário. - Se receber
#N/A, confirme se o valor procurado existe realmente no intervalo de origem.
Vantagens: Funciona em todas as versões do Excel e dispensa requisitos especiais de introdução de matrizes.
Limitações:É menos robusta se existirem células vazias ou valores de erro na matriz de pesquisa; não oferece mensagens de erro personalizadas sem recorrer a funções envolventes (por exemplo,)SEERRO).
Utilizar VLOOKUP e devolver o último valor correspondente com Kutools para Excel
O Kutools para Excel oferece uma forma intuitiva e eficiente de obter o último valor correspondente, ideal para utilizadores que preferem uma abordagem gráfica, sem fórmulas, ou que precisam de processar grandes conjuntos de dados rapidamente. A ferramenta integrada Procurar de baixo para cima do conjunto Super PROC do Kutools elimina a complexidade das fórmulas, trata automaticamente os erros e pode apresentar resultados em várias células simultaneamente — poupando tempo e reduzindo erros de introdução. Este método é particularmente adequado para utilizadores que não estão familiarizados com funções avançadas do Excel ou que pretendem minimizar a edição manual de fórmulas.
Após instalar o Kutools para Excel, siga os seguintes passos:
1. Clique em Kutools > Super PROC > Procurar de baixo para cima. Veja a imagem:

2.Na caixa de diálogo Procurar de baixo para cima:
- Selecione as células do valor de procura e as células de saída pretendidas nas secções «Área de Colocação da Lista» e «Intervalo de Valor de Pesquisa».
- Especifique o intervalo correspondente na secção «Intervalo de Dados». Certifique-se de que todos os intervalos têm o mesmo tamanho e estão na mesma ordem, para evitar desalinhamentos.
- Clique em OK para aplicar.

Após execução, o Kutools devolverá instantaneamente os últimos itens correspondentes, conforme ilustrado abaixo:

Sugestão: Se pretender apresentar uma mensagem personalizada em vez de #N/A para procuras sem correspondência, clique em Opções, marque Substitui o resultado de saída que não é encontrado e retorna '#N/A' com o valor especificado e introduza o texto pretendido.

Pontos fortes: Não exige edição de fórmulas. Suporta operações em massa e substituição de erros — ideal para principiantes no Excel e perfeito para tarefas com grandes volumes de dados.
Desvantagens: Requer a instalação do suplemento Kutools; a funcionalidade está disponível apenas nas versões completa ou de avaliação do Kutools.
Dica prática: Revise sempre a saída e o intervalo de entrada antes de confirmar, para garantir que os resultados estão corretos — especialmente se os seus dados mudarem dinamicamente.
Utilizar VLOOKUP e devolver o último valor correspondente com as funções INDEX e MATCH
A combinação das funções INDEX e MATCH oferece outro método flexível e compatível com várias versões para procurar com VLOOKUP o último valor correspondente no Excel. Esta abordagem é altamente adaptável, não exige que os dados estejam ordenados e é compatível com todas as versões do Excel, incluindo edições antigas. Contudo, consoante a sua versão do Excel, poderá ter de utilizar uma fórmula de matriz para obter resultados corretos.
Para utilizar este método, siga os passos abaixo:
1.Na sua célula de destino, introduza a fórmula abaixo:
=INDEX($C$2:$C$12,MATCH(2,1/($A$2:$A$12=E2))) 2.Confirme a fórmula:
- No Excel 2019 ou versões anteriores, termine com Ctrl + Shift + Enter (o Excel adicionará automaticamente as chavetas {}).
- No Microsoft 365 / Excel 2021 e versões posteriores, basta premir Enter.
3. Se tiver vários intervalos de valores de pesquisa, arraste a alça de preenchimento para aplicar a fórmula às linhas adjacentes e ativar o processamento em lote.

$A$2:$A$12é a coluna de pesquisa (critérios).E2é a célula que contém o valor a procurar.$C$2:$C$12é a coluna de retorno (resultados).
1/($A$2:$A$12=E2)gera uma matriz com o valor 1 onde a condição de pesquisa é verdadeira e erros#DIV/0!noutros locais. Isto converte os valores lógicos VERDADEIRO/FALSO em sinais numéricos.MATCH(2, 1/($A$2:$A$12=E2))pede ao Excel para encontrar o número 2 (que não está presente). O MATCH devolve então a posição do último 1 na matriz — ou seja, a última correspondência verdadeira.INDEX($C$2:$C$12, ...)utiliza essa posição para obter o valor correspondente no intervalo de retorno.
Conselhos e Sugestões:
- Certifique-se de que os intervalos de procura e de retorno têm o mesmo número de linhas e utilize referências absolutas ao copiar a fórmula para baixo.
- Se vir
#N/Aou#DIV/0!, verifique se existem chaves não correspondidas, células vazias ou erros na matriz de procura. Para obter um resultado mais limpo, envolva a fórmula comIFERROR, por exemplo:=IFERROR(your_formula, "").
Vantagens: Versátil e compatível com todas as versões anteriores do Excel.
Inconvenientes: Um pouco mais difícil de memorizar; requer introdução como fórmula de matriz em versões antigas do Excel.
Utilizar VLOOKUP e devolver o último valor correspondente com a função XLOOKUP
A função XLOOKUP, disponível no Excel 365, Excel 2021 e versões posteriores, oferece a solução mais simples e moderna para devolver a última correspondência. Com parâmetros que controlam a direção da pesquisa e o tratamento de erros, o XLOOKUP pode pesquisar de baixo para cima, obtendo o último valor correspondente — sem recorrer a fórmulas de matriz legadas e complicadas.
Para utilizar o XLOOKUP na obtenção do último valor correspondente:
1. Na sua célula de destino, introduza a fórmula abaixo. Depois, arraste a alça de preenchimento caso precise de a aplicar a outros intervalos de valores de pesquisa.
=XLOOKUP(E2, $A$2:$A$12, $C$2:$C$12, , , -1) 
E2: o valor procurado.$A$2:$A$12: a matriz de pesquisa a procurar.$C$2:$C$12: a matriz de retorno., ,: duas vírgulas indicam que os argumentos opcionaisif_not_foundematch_modeforam omitidos (utilizam-se os valores predefinidos).-1:search_mode=-1efetua a pesquisa da última para a primeira entrada (de baixo para cima), obtendo assim a última correspondência.
Notas Práticas:
- Não é necessária uma entrada especial de matriz. Pode fornecer uma mensagem personalizada através de
if_not_found, se necessário. - O XLOOKUP devolve a última correspondência com base na ordem da matriz fornecida (de baixo para cima com)
-1), independentemente da visibilidade do filtro. - Para processamento em lote, copie para baixo — cada linha é avaliada de forma independente.
Benefícios: Sintaxe simples; pesquisa integrada do último para o primeiro; sem fórmulas de matriz legadas.
Limitação: Disponível apenas no Excel 365, Excel 2021 e versões posteriores.
Utilizar VLOOKUP e devolver o último valor correspondente com macro VBA
Em alguns casos — especialmente quando precisar de automatizar o processo de pesquisa ou trabalhar com conjuntos de dados muito grandes — utilizar uma macro VBA pode ser uma solução prática. O VBA permite-lhe criar um script personalizado com a lógica de pesquisa e gerir exceções ou condições especiais que as fórmulas não conseguem resolver facilmente.
Cenário aplicável: Dê prioridade a esta solução se precisar frequentemente de executar a mesma operação de pesquisa em diferentes livros ou quiser encapsular a sua lógica num script reutilizável.
1. Clique em Programador > Visual Basic para abrir a janela Microsoft Visual Basic para Aplicações. Em seguida, clique em Inserir > Módulo e cole o código seguinte no módulo:
Option Explicit
Sub FindLastMatch()
Dim searchRange As Range
Dim returnRange As Range
Dim searchValue As Variant
Dim i As Long
Dim foundValue As Variant
Dim found As Boolean
Const xTitleId As String = "KutoolsforExcel"
' Get ranges and value from user
On Error GoTo CleanFail
Set searchRange = Application.InputBox("Select the lookup column (single column):", xTitleId, Type:=8)
If TypeName(searchRange) = "Boolean" Then Exit Sub ' Cancel pressed
Set returnRange = Application.InputBox("Select the return column (single column):", xTitleId, Type:=8)
If TypeName(returnRange) = "Boolean" Then Exit Sub ' Cancel pressed
searchValue = Application.InputBox("Enter the lookup value:", xTitleId, Type:=2)
If VarType(searchValue) = vbBoolean And searchValue = False Then Exit Sub ' Cancel pressed
' Basic validations
If searchRange.Columns.Count <> 1 Or returnRange.Columns.Count <> 1 Then
MsgBox "Please select a single column for both lookup and return ranges.", vbExclamation
Exit Sub
End If
If searchRange.Rows.Count <> returnRange.Rows.Count Then
MsgBox "Lookup and return ranges must have the same number of rows.", vbExclamation
Exit Sub
End If
If Not searchRange.Parent Is returnRange.Parent Then
MsgBox "Lookup and return ranges must be on the same worksheet.", vbExclamation
Exit Sub
End If
' Scan from bottom to top
found = False
For i = searchRange.Rows.Count To 1 Step -1
If CStr(searchRange.Cells(i, 1).Value) = CStr(searchValue) Then
foundValue = returnRange.Cells(i, 1).Value
found = True
Exit For
End If
Next i
If found Then
MsgBox "The last matching value is: " & foundValue, vbInformation
Else
MsgBox "No match found.", vbInformation
End If
Exit Sub
CleanFail:
MsgBox "Operation cancelled or invalid selection.", vbExclamation
End Sub
2. Clique no botão
para executar o código. Nas caixas de diálogo que surgirem, selecione a coluna de pesquisa, a coluna de retorno e introduza o seu valor de pesquisa conforme solicitado. A macro percorre a coluna da Última Linha de baixo para cima e apresenta o último valor correspondente encontrado.
Notas:
- Certifique-se de que os intervalos de procura e de retorno são colunas únicas, contêm o mesmo número de linhas e se encontram na mesma folha de cálculo.
- A macro compara os valores como texto por simplicidade. Caso precise distinguir formatos numéricos (por exemplo, 00123 e 123), ajuste a lógica de comparação em conformidade.
- Caso não seja encontrada nenhuma correspondência ou se a seleção for inválida ou cancelada, é apresentada uma notificação.
Pontos fortes: Totalmente automatizado, reutilizável e sem necessidade de introduzir ou copiar fórmulas entre células.
Desvantagens: Configuração inicial ligeiramente mais complexa; requer um livro com macros ativadas (.xlsm) e um ambiente configurado como confiável para macros.
Obter o último valor correspondente no Excel é uma necessidade frequente — seja para monitorizar as transações mais recentes, analisar atualizações ou acompanhar alterações ao longo do tempo. Com os métodos descritos acima, pode selecionar a abordagem que melhor se adapta à sua versão do Excel, ao seu fluxo de trabalho e ao seu nível de familiaridade com as ferramentas disponíveis. As soluções com LOOKUP, INDEX & MATCH, XLOOKUP, Kutools e macros VBA apresentam cada uma vantagens distintas e cenários ideais de aplicação.
Resolução de problemas: Se a sua fórmula devolver um erro #N/D ou #DIV/0!, verifique se selecionou os intervalos corretamente, confirme que o valor de pesquisa existe e assegure-se de que os intervalos estão devidamente alinhados. Sempre que possível, evite células vazias na coluna de pesquisa para garantir a fiabilidade das fórmulas. Em caso de dúvida, experimente a fórmula com uma pequena amostra dos seus dados — isso ajuda a isolar eventuais erros.
Para explorar ainda mais técnicas de pesquisa — como obter múltiplos resultados, concatenar correspondências ou pesquisar entre folhas de cálculo — não deixe de consultar recursos especializados, como a nossa página de tutoriais do Excel, que oferece uma vasta gama de artigos e guias passo a passo. Dominar estas competências de pesquisa vai ajudá-lo a ganhar confiança para processar, analisar e apresentar os seus dados críticos no Excel de forma mais eficaz.
Mais artigos relacionados:
- Procurar Valores Verticalmente em Múltiplas Folhas de Cálculo
- No Excel, podemos aplicar facilmente a função PROCV para obter valores correspondentes numa única tabela de uma folha de cálculo. Mas já alguma vez pensou em como procurar um valor verticalmente em múltiplas folhas de cálculo? Imagine que tem as três folhas seguintes, cada uma com os seus intervalos de dados, e pretende recuperar determinados valores correspondentes com base nos critérios dessas três folhas.
- Utilizar Correspondência Exata e Aproximada do PROCV no Excel
- No Excel, o PROCV é uma das funções mais importantes para procurar um valor na coluna mais à esquerda de uma tabela e devolver o valor correspondente na mesma linha de um intervalo. Mas será que está a aplicar a função PROCV com sucesso no Excel? Neste artigo, explico-lhe como utilizar corretamente a função PROCV no Excel.
- PROCV para Devolver uma Célula Vazia ou um Valor Específico em vez de 0 ou #N/D
- Normalmente, ao utilizar a função PROCV para obter um valor correspondente, se a célula de destino estiver vazia, a função devolve 0; já se o valor procurado não for encontrado, surge o erro #N/D, como ilustrado na imagem seguinte. Em vez de exibir 0 ou #N/D, como pode configurar a fórmula para apresentar uma célula vazia ou um texto personalizado à sua escolha?
- PROCV e Devolver Toda a Linha / Linha inteira de um Valor Correspondente no Excel
- Normalmente, pode utilizar o PROCV para devolver um valor correspondente a partir de um intervalo de dados, mas já alguma vez tentou encontrar e devolver toda a linha de dados com base em critérios específicos, tal como ilustrado na imagem seguinte?
- PROCV e Concatenar Múltiplos Valores Correspondentes no Excel
- Como todos sabem, a função PROCV do Excel permite procurar um valor e devolver os dados correspondentes de outra coluna, mas normalmente apenas obtém a primeira ocorrência quando existem múltiplas correspondências. Neste artigo, mostro como procurar verticalmente e concatenar todos os valores correspondentes — seja numa única célula, seja numa lista vertical.
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
