Edu Tognon

Geralmente utilizada em conjunto com outras funções, a CORRESP pode ser usada sozinha no Excel, mas em casos bastante específicos. Ela é responsável por retornar a posição (baseada em linhas) de um determinado dado em uma matriz. 

Neste artigo vamos aprender a sintaxe da função CORRESP, em que casos ela pode ser usada sem outra função e também alguns truques para usá-la com matrizes de coluna inteira.

Versão em vídeo

Versão do Excel utilizada na aula: Microsoft Excel 365 [versão 2211]

Download dos arquivos

Você pode baixar os arquivos utilizados no tutorial em vídeo. O arquivo inicial refere-se ao arquivo sem as modificações, ideal para praticar o passo a passo e treinar suas habilidades. O arquivo pronto é o arquivo final, com todas as modificações ensinadas já aplicadas, ideal se você já quiser ter em mãos o resultado. 

Para baixar os arquivos, acesse a página de download e clique no botão Baixar

Inscreva-se para receber novos arquivos, aulas, artigos e dicas por e-mail! 

Ao se cadastrar, você aceita nossos Termos de Uso e Serviço e nossa Política de Privacidade.

Versão em texto / ilustrada

Versão do Excel utilizada neste tutorial: Microsoft Excel 365 [versão 2211]

Função CORRESP usando intervalos

Na planilha a seguir, a célula I2 contém a função CORRESP, que analisa o dado digitado em G2 e busca-o no intervalo de células da coluna C. Perceba que a posição 12 refere-se justamente à linha em que se encontra esse dado DENTRO da matriz, não em relação às próprias linhas do Excel. 

CORRESP indicando a posição correspondente de um dado em uma matriz

A sintaxe dessa função é bastante simples. Supondo que os dados de nossa matriz comecem em C5 e terminem em C354, digitaríamos o seguinte em I2: 

=CORRESP(G2;C5:C354;0) 

G2 refere-se ao item a ser pesquisado (em nosso exemplo, o número do documento). A matriz de dados é representada por C5:C354, intervalo onde estão todos os documentos a serem analisados para a pesquisa. O último argumento representa o tipo de correspondência: 

0: localiza a correspondência exata. 

1: localiza o maior valor que é igual ou menor que o valor procurado. Nesse caso, os dados precisam estar em ordem crescente. 

–1: localiza o menor valor que é igual ou maior que o valo procurado. Nesse caso, os dados precisam estar em ordem decrescente. 

Como nossa intenção é buscar um valor exato, nossa escolha é pelo número 0 (zero). Caso você omita essa informação, o Excel automaticamente entenderá esse argumento como 1. 

Resultado da função CORRESP com intervalo

Perceba que a posição é sempre relativa ao intervalo. A planilha usada como exemplo é um dos casos peculiares em que a função CORRESP, sozinha, pode ser útil, pois, em situações em que desejamos buscar um determinado número que corresponda também a uma sequência crescente de uma coluna da planilha (nesse caso, a coluna B), a posição retornada pela função corresponde à posição em que o dado ocupa a partir dessa coluna que nos serve como “contagem”. 

Função CORRESP usando coluna inteira

Um dos problemas de se usar CORRESP em um intervalo fixo é que, caso seja necessário inserir mais dados – e consequentemente aumentar esse intervalo –, precisaríamos alterar a fórmula, para que a correspondência da matriz seja mais abrangente. 

Veja o que acontece quando quando usamos a coluna C completa como matriz de dados: 

=CORRESP(G2;C:C;0)

Função CORRESP usando coluna inteira

De fato, o dado digitado pertence à posição número 10, já que estamos agora analisando a coluna C de forma completa. Dentro da coluna C, iniciada em C1, o documento em questão está na posição 10. Entretanto, dentro de nossa tabela, ele ocupa a posição 6. Como então fazer com que o Excel reconheça a posição de nossa tabela, mesmo levando em consideração toda a coluna C para sua análise? 

Uma das maneiras é retirar do resultado da CORRESP a quantidade de linhas que estamos usando como cabeçalho. Note que nossos dados são iniciados na linha 5, portanto as 4 anteriores servem apenas como estrutura para nossa planilha. Sendo assim, poderíamos “consertar” esse resultado da seguinte maneira: 

=CORRESP(G2;C:C;0)–4 

O impasse é que, ao inserir ou excluir linhas, o número 4 permanece fixo, portanto, se nossa planilha contiver 3 ou 6 linhas para o cabeçalho, o Excel continuará subtraindo 4 do resultado. Mas há uma alternativa muito mais interessante. 

Ajustando o resultado de CORRESP com LIN

A lógica é bastante simples: precisamos subtrair o número 4, mas de modo que ele seja alterado se uma nova linha for inserida ou se alguma for excluída. A função LIN é responsável por retornar o número da linha de qualquer célula. Por mais que pareça simplória, essa função é extremamente útil em conjunto com outras. Ora, nesse caso, podemos usar como argumento qualquer célula que esteja na linha 4, já que o resultado, obviamente, será 4. 

Veja como ficaria nossa fórmula: 

=CORRESP(G2;C:C;0)-LIN(A4) 

De forma resumida, 10 – 4 = 6. 

Função CORRESP de coluna completa adaptada com a função LIN

Ainda que o resultado seja 10, estamos subtraindo 4, portanto a posição é retornada de modo adaptado à nossa lista de posições. 

Observe o que ocorre quando inserimos uma nova linha em nosso cabeçalho. 

Função LIN atualizada automaticamente ao inserir nova linha

A função LIN (quando usada sem referência absoluta) é atualizada automaticamente, deslocando a célula analisada conforme inserção ou exclusão de linhas, o que deixa a adaptação da função CORRESP funcionando perfeitamente. 

Aprenda o que quiser. Milhares de cursos incríveis para escolher.

Dicas e informações complementares

  • A função CORRESP pode ser usada com a função ÍNDICE para realizar uma busca de informações em uma matriz de dados, de modo parecido com a PROCV, mas de forma ainda mais personalizada.