XLOOKUP no Excel: O Guia Definitivo da Função PROCX
Aprenda a usar o XLOOKUP (PROCX) no Excel e Planilhas Google: buscas à esquerda, tratamento de erros integrado e retorno de várias colunas.
Por Ayoub Farid · · 3 min de leitura
O XLOOKUP (chamado de PROCX no Excel em português) substitui o PROCV (VLOOKUP), o PROCH (HLOOKUP) e a maioria das fórmulas com ÍNDICE/CORRESP (INDEX/MATCH) por uma única função muito mais fácil de ler e entender. Se a sua versão do software já conta com esse recurso (Microsoft 365, Excel 2021 ou posterior, Excel para a web) ou se você usa o Planilhas Google (Google Sheets), essa é a principal função de busca para quem quer aprender Excel hoje em dia.
*(Nota: caso o seu Excel esteja em português, utilize o nome PROCX no lugar de XLOOKUP ao digitar as fórmulas).*
Sintaxe
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
Na maioria das vezes, os três primeiros argumentos são tudo o que você precisa:
- lookup_value: o valor que você está procurando
- lookup_array: o intervalo ou coluna onde pesquisar
- return_array: o intervalo ou coluna com o resultado a retornar
Exemplo prático
| A | B | C | |
|---|---|---|---|
| 1 | Código | Produto | Preço |
| 2 | P-101 | Espresso | 2.50 |
| 3 | P-102 | Latte | 3.50 |
| 4 | P-103 | Chá | 2.00 |
=XLOOKUP(F2,A2:A4,C2:C4) → 3.50 para "P-102"
Não precisa contar o número de colunas. A correspondência exata já é o padrão da fórmula.
Tratamento de "não encontrado" integrado
=XLOOKUP(F2,A2:A4,C2:C4,"Not found")
Dispensa o uso da função SEERRO (IFERROR).
Fazer busca para a esquerda
A coluna de retorno pode ficar em qualquer posição da sua planilha:
=XLOOKUP("Latte",B2:B4,A2:A4) → P-102
O PROCV tradicional não consegue fazer isso sozinho.
Retornar várias colunas de uma só vez
=XLOOKUP(F2,A2:A4,B2:C4)
Retorna o produto e o preço simultaneamente, preenchendo automaticamente duas células vizinhas (efeito de despejo).
Correspondências aproximadas (faixas e intervalos)
Para tabelas de alíquotas de impostos, faixas salariais ou notas escolares, use o match_mode -1 (correspondência exata ou o próximo item menor):
=XLOOKUP(B2,$E$2:$E$5,$F$2:$F$5,,-1)
Diferente do argumento VERDADEIRO do PROCV, seus dados de referência não precisam estar ordenados para isso funcionar.
Encontrar a última correspondência
Definir o search_mode como -1 faz a busca de baixo para cima, ideal para encontrar, por exemplo, o preço mais recente registrado para um item:
=XLOOKUP(F2,A2:A500,C2:C500,,0,-1)
Trave as células antes de arrastar a fórmula para baixo
Vale a mesma regra de ouro das funções de busca: aplique a referência absoluta com o símbolo $ nos intervalos antes de arrastar a fórmula para baixo.
=XLOOKUP(F2,$A$2:$A$500,$C$2:$C$500,"Not found")
Compatibilidade entre versões
O XLOOKUP não está disponível no Excel 2019 nem em versões anteriores. Se você enviar um arquivo para alguém usando uma versão antiga, a célula exibirá o erro #NOME?. Leia nosso comparativo XLOOKUP vs VLOOKUP para avaliar a melhor opção para a sua rotina ou para um teste de Excel para entrevista de emprego.
Pratique o que aprendeu
Fórmulas de busca e pesquisa são módulos indispensáveis no Cellio. Nossos exercícios práticos de Excel trazem desafios com XLOOKUP acompanhados de gabarito detalhado.
Perguntas frequentes
O que é a função XLOOKUP no Excel?
É uma função de pesquisa moderna que busca um valor em uma coluna e retorna o dado correspondente em outra, em qualquer direção, utilizando correspondência exata por padrão. No Excel em português, ela se chama PROCX.
Quais versões do Excel contam com o XLOOKUP?
Microsoft 365, Excel 2021, Excel 2024 e Excel para a web. O recurso também funciona nativamente no Planilhas Google (Google Sheets).
O XLOOKUP é melhor do que o PROCV?
Para a maioria esmagadora das tarefas, sim: dispensa a contagem de colunas, pesquisa para a esquerda, traz correspondência exata por padrão e já inclui tratamento nativo para erros de valores não encontrados.
O XLOOKUP consegue retornar múltiplos valores?
Ele pode retornar várias colunas adjacentes para uma mesma correspondência. Já se você precisa trazer todas as linhas correspondentes da base, use a função FILTER (FILTRO).