=CORRESPX(E2;A2:A6) retorna a posição de E2 em A2:A6: 1 para a primeira célula, 2 para a segunda. Diferente da CORRESP (MATCH), ela procura uma correspondência exata, a não ser que você diga outra coisa. A CORRESPX precisa do Excel 2021 ou do Microsoft 365; em versões anteriores, use CORRESP(E2;A2:A6;0). Em inglês, ela se chama XMATCH, e a tabela mostra a fórmula assim: =XMATCH(E2,A2:A6). Você também pode digitar as fórmulas em português, com ponto e vírgula.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Look for | Position | |
| 2 | Apple | Fruit | $1.20 | Carrot | 3 | |
| 3 | Pear | Fruit | $1.50 | |||
| 4 | Carrot | Vegetable | $0.80 | |||
| 5 | Bread | Bakery | $2.40 | |||
| 6 | Milk | Dairy | $1.10 |
=CORRESPX(E2;A2:A6)Carrot é o terceiro item, então F2 mostra 3. Digite Kiwi e ela retorna #N/D (#N/A em inglês, como a tabela mostra). Como toda busca do Excel, ela ignora maiúsculas.
Sintaxe da CORRESPX
=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
| Argumento | Valores |
|---|---|
match_mode | 0 exata (padrão), -1 exata ou o próximo menor, 1 exata ou o próximo maior, 2 correspondência com curinga |
search_mode | 1 a partir do primeiro item (padrão), -1 a partir do último item, 2 busca binária crescente, -2 busca binária decrescente |
Os modos binários são mais rápidos em listas ordenadas muito grandes e retornam posições erradas em listas fora de ordem. Os outros modos funcionam com dados em qualquer ordem.
O próximo menor ou o próximo maior, sem ordenar
O modo de correspondência 1 encontra o menor valor que é maior ou igual ao valor procurado. Isso responde "a menor caixa que serve" mesmo quando os tamanhos estão listados fora de ordem. Com a CORRESP, você precisaria da lista ordenada do maior para o menor.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Box | Holds (liters) | Item (liters) | 18 | |
| 2 | S | 5 | Position | 4 | |
| 3 | XL | 50 | Box | L | |
| 4 | M | 12 | |||
| 5 | L | 25 |
=CORRESPX(E1;B2:B5;1)Os tamanhos em que cabem 18 litros são 25 e 50, e o menor é 25, o quarto item, a caixa L. Mude E1 para 12 para uma correspondência exata (M) ou para 40 para XL. O modo -1 é o contrário: o maior valor menor ou igual ao valor procurado, a regra das faixas de imposto e de comissão. A PROCX (XLOOKUP) tem os mesmos dois modos e retorna o valor direto.
Procurar a partir do último item
O modo de pesquisa -1 começa por baixo, então a CORRESPX retorna a posição da última ocorrência. As posições continuam contando a partir do topo do intervalo.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Date | Customer | Amount | Customer | Ben | |
| 2 | 2026-03-02 | Ben | 120 | Last position | 5 | |
| 3 | 2026-03-05 | Ana | 80 | Last date | 2026-03-20 | |
| 4 | 2026-03-09 | Ben | 45 | First position | 1 | |
| 5 | 2026-03-12 | Cara | 200 | |||
| 6 | 2026-03-20 | Ben | 60 | |||
| 7 | 2026-03-24 | Ana | 95 |
=CORRESPX(F1;B2:B7;0;-1)Ben aparece nas posições 1, 3 e 5. A busca para a frente retorna 1 e a busca reversa retorna 5, o pedido dele de 2026-03-20. Antes da CORRESPX, a última posição exigia um truque de matriz: =CORRESP(2;1/(B2:B7=F1)).
Curingas precisam do modo de correspondência 2
Com o modo 2, * vale por quaisquer caracteres e ? por exatamente um. Nos outros modos, eles são caracteres comuns, enquanto a CORRESP os trata como curingas sempre que o tipo de correspondência é 0.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Pattern | Position | |
| 2 | Green tea | *coffee | 2 | |
| 3 | Iced coffee | ?lack* | 4 | |
| 4 | Coffee beans | |||
| 5 | Black tea | |||
| 6 | Orange juice |
=CORRESPX(C2;A2:A6;2)*coffee (qualquer coisa que termine em "coffee") bate com Iced coffee na posição 2, e ?lack* bate com Black tea na posição 4. Coffee beans não bate com *coffee, porque o padrão não tem * no fim. Sem o modo 2, o mesmo padrão é procurado como texto literal, então no Excel isto retorna #N/D:
=XMATCH("*coffee", A2:A6) #N/A: no cell is literally "*coffee"
=XMATCH("*coffee", A2:A6, 2) 2
No Excel em português: =CORRESPX("*coffee";A2:A6;2).
CORRESPX ou CORRESP
| CORRESP | CORRESPX | |
|---|---|---|
| Padrão quando o modo fica de fora | Aproximada (1), dados precisam estar ordenados | Exata |
| Próximo valor menor | 1, dados em ordem crescente | -1, qualquer ordem |
| Próximo valor maior | -1, dados em ordem decrescente | 1, qualquer ordem |
| Curingas | Sempre ativos com 0 | Só com o modo de correspondência 2 |
| Última ocorrência | Não | Modo de pesquisa -1 |
| Versões | Todas | Excel 2021 e Microsoft 365 |
Os sinais são invertidos: o -1 da CORRESP encontra o próximo valor maior e o -1 da CORRESPX, o próximo menor. Ao converter CORRESP(E2;A2:A6;0) para CORRESPX, tire o 0; ao converter uma CORRESP aproximada, inverta o sinal, e a ordem dos dados deixa de importar. A página da CORRESP trata da função mais antiga.
Prática: a posição do último pedido
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Date | Customer | Amount | Customer | Ben | |
| 2 | 2026-03-02 | Ben | 120 | Last position | ||
| 3 | 2026-03-05 | Ana | 80 | |||
| 4 | 2026-03-09 | Ben | 45 | |||
| 5 | 2026-03-12 | Cara | 200 | |||
| 6 | 2026-03-20 | Ben | 60 | |||
| 7 | 2026-03-24 | Ana | 95 |
Sua vez: Em F2, retorne a posição do último pedido do cliente em F1.
Perguntas frequentes
Qual a diferença entre CORRESP e CORRESPX?
A CORRESPX tem a correspondência exata como padrão (a CORRESP tem a aproximada), encontra o próximo valor menor ou maior sem precisar de dados ordenados, pode procurar do último item para cima e só trata * e ? como curingas quando você pede, com o modo de correspondência 2. Ela precisa do Excel 2021 ou do Microsoft 365.
Como encontro a última ocorrência com a CORRESPX?
Defina o modo de pesquisa, o quarto argumento, como -1: =CORRESPX("Ben";B2:B7;0;-1) retorna a posição do último Ben em B2:B7. As posições continuam contando a partir do topo do intervalo.
O que a CORRESPX retorna quando nada bate?
#N/D, como a CORRESP. Envolva em SENÃODISP para mostrar outra coisa: =SENÃODISP(CORRESPX(E2;A2:A6);"Not in list").
A CORRESPX pode substituir a CORRESP dentro do ÍNDICE?
Pode. =ÍNDICE(C2:C6;CORRESPX(E2;A2:A6)) funciona como o ÍNDICE com CORRESP(E2;A2:A6;0), sem um 0 para esquecer. Use a CORRESP quando o arquivo precisa abrir no Excel 2019 ou anterior.