Função CORRESP

Aplica-se A
Excel para Microsoft 365 Excel para Microsoft 365 para Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 para Mac Excel 2019 Excel 2016

Sugestão

Experimente utilizar a nova função XMATCH , uma versão melhorada de CORRESP que funciona em qualquer direção e devolve correspondências exatas por predefinição, tornando mais fácil e conveniente utilizar do que a antecessora.

A função CORRESP procura um item especificado num intervalo de células e, em seguida, devolve 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) irá devolver o número 2, porque 25 é o segundo item no intervalo.

Sugestão

Utilize CORRESP em vez de uma das funções PROC quando necessitar da posição de um item num intervalo em vez do item propriamente dito. Por exemplo, pode utilizar a função CORRESP para fornecer um valor para o argumento row_num da função ÍNDICE .

Sintaxe

CORRESP(valor_proc; matriz_proc; [tipo_corresp])

A sintaxe da função CORRESP tem os seguintes argumentos:

  • lookup_value Obrigatório. O valor que pretende corresponder no lookup_array. Por exemplo, quando procura o número do telefone de alguém numa lista telefónica, está a utilizar o nome da pessoa como o valor de pesquisa, mas o número do telefone é o valor que deseja.

    O argumento valor_proc pode ser um valor (número, texto ou valor lógico) ou uma referência de célula a um número, texto ou valor lógico.

  • lookup_array Obrigatório. O intervalo de células onde a pesquisa é efetuada.

  • match_type Opcional. O número -1, 0 ou 1. O argumento match_type especifica a forma como o Excel corresponde lookup_value com valores em lookup_array. O valor predefinido para este argumento é 1.

    A tabela seguinte descreve a forma como a função encontra os valores com base na definição do argumento tipo_corresp.

Tipo_corresp Comportamento
1 ou omisso CORRESP localiza o maior valor que é menor ou igual a lookup_value. Os valores no argumento lookup_array têm de ser colocados por ordem ascendente, por exemplo: ...-2, -1, 0, 1, 2, ..., A-Z, FALSO, VERDADEIRO.
0 CORRESP localiza o primeiro valor que é exatamente igual a lookup_value. Os valores no argumento lookup_array podem estar em qualquer ordem.
-1 CORRESP localiza o menor valor que é maior ou igual alookup_value. Os valores no argumento lookup_array têm de ser colocados por ordem descendente, por exemplo: VERDADEIRO, FALSO, Z-A, ... 2, 1, 0, -1, -2, ..., e assim por diante.
  • CORRESP devolve a posição do valor correspondente dentro de lookup_array, não o próprio valor. Por exemplo, CORRESP("b",{"a","b","c"},0) devolve 2, que é a posição relativa de "b" na matriz {"a","b","c"}.
  • CORRESP não faz distinção entre letras maiúsculas e minúsculas ao fazer corresponder valores de texto.
  • Se CORRESP não conseguir localizar um valor correspondente, devolve o valor de erro #N/D.
  • Se match_type for 0 e lookup_value for uma cadeia de texto, pode utilizar os carateres universais ( o ponto de interrogação (?) e o asterisco (*) – no argumento lookup_value . Um ponto de interrogação corresponde a qualquer caráter individual, um asterisco corresponde a qualquer sequência de carateres. Se quiser encontrar um ponto de interrogação ou asterisco real, escreva um til (~) antes do caráter.

Exemplo

Copie os dados de exemplo que se encontram na seguinte tabela e cole-os na célula A1 de uma nova folha de cálculo do Excel. Para que as fórmulas mostrem resultados, selecione-as, prima F2 e, em seguida, prima Enter. Se pretender, pode 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) Visto que não há uma correspondência exata, é devolvida a posição no seguinte menor valor (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) Devolve um erro porque os valores no intervalo B2:B5 não estão em ordem descendente. #N/D