Como usar a função CORRESP no Excel
Como usar a função CORRESP no Excel
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.
Videoaula completa
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.
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.
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)
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.
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.
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.
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.