Dica
Tente usar a nova função XMATCH , uma versão aprimorada do MATCH que funciona em qualquer direção e retorna correspondências exatas por padrão, tornando mais fácil e conveniente usar do que seu antecessor.
A função CORRESP procura um item especificado em um intervalo de células e retorna a posição relativa desse item no intervalo. Por exemplo, se o intervalo A1:A3 contiver os valores 5, 25 e 38, a fórmula =CORRESP(25,A1:A3,0) retornará o número 2, porque 25 é o segundo item no intervalo.
Dica
Use CORRESP no lugar de uma das funções PROC quando precisar da posição de um item em um intervalo em vez do item propriamente dito. Por exemplo, você pode usar a função MATCH para fornecer um valor para o argumento row_num da função INDEX .
Sintaxe
CORRESP(valor_procurado, matriz_procurada, [tipo_correspondência])
A sintaxe da função CORRESP tem os seguintes argumentos:
Valor_procurado Necessário. O valor que você deseja corresponder em lookup_array. Por exemplo, quando você procura o número de alguém na lista telefônica, está usando o nome da pessoa como valor de pesquisa, mas o número do telefone é o valor desejado.
O argumento valor_procurado pode ser um valor (número, texto ou valor lógico) ou uma referência de célula para um número, texto ou valor lógico.
Matriz_procurada Necessário. O intervalo de células que estão sendo pesquisadas.
Tipo_correspondência Opcional. O número -1, 0 ou 1. O argumento match_type especifica como o Excel corresponde lookup_value com valores em lookup_array. O valor padrão para este argumento é 1.
A tabela a seguir descreve como a função localiza valores com base na configuração do argumento tipo_correspondência.
| Tipo_correspondência | Comportamento |
|---|---|
| 1 ou não especificado | Match localiza o maior valor que é menor ou igual a lookup_value. Os valores no argumento lookup_array devem ser colocados em ordem crescente, por exemplo: ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE. |
| 0 | MATCH localiza o primeiro valor exatamente igual a lookup_value. Os valores no argumento lookup_array podem estar em qualquer ordem. |
| -1 | MATCH localiza o menor valor que é maior ou igual alookup_value. Os valores no argumento lookup_array devem ser colocados em ordem decrescente, por exemplo: TRUE, FALSE, Z-A, ... 2, 1, 0, -1, -2, ..., e assim por diante. |
- MATCH retorna a posição do valor correspondente dentro de lookup_array, não o valor em si. Por exemplo, MATCH("b",{"a","b","c"},0) retorna 2, que é a posição relativa de "b" dentro da matriz {"a", "b", "c"}.
- CORRESP não faz distinção entre letras maiúsculas e minúsculas ao fazer a correspondência entre valores de texto.
- Se CORRESP não conseguir localizar um valor coincidente, ele retornará o valor de erro #N/D.
- Se match_type for 0 e lookup_value for uma cadeia de caracteres de texto, você poderá usar os caracteres curinga – o ponto de interrogação (?) e o asterisco (*) no argumento lookup_value . Um ponto de interrogação coincide com qualquer caractere único; um asterisco coincide com qualquer cadeia de caracteres. Se você quiser encontrar um ponto de interrogação ou um asterisco real, digite um bloco (~) antes do caractere.
Exemplo
Copie os dados de exemplo da tabela a seguir e cole-os na célula A1 de uma nova planilha do Excel. Para as fórmulas mostrarem resultados, selecione-as, pressione F2 e pressione Enter. Se precisar, você poderá ajustar as larguras das colunas para ver todos os dados.
| Produto | Contagem | |
|---|---|---|
| Bananas | 25 | |
| Laranjas | 38 | |
| Maçãs | 40 | |
| Peras | 41 | |
| Fórmula | Descrição | Resultado |
| =CORRESP(39;B2:B5;1) | Como não existe uma correspondência exata, é retornada a posição do próximo valor mais baixo (38) no intervalo B2:B5. | 2 |
| =CORRESP(41;B2:B5;0) | A posição do valor 41 no intervalo B2:B5. | 4 |
| =CORRESP(40;B2:B5;-1) | Retorna um erro porque os valores no intervalo B2:B5 não estão em ordem decrescente. | #N/D |