Menus de configuração no Painel de Administração

GVensino - fome de saber!

Entenda a função CORRESP no Excel

 

Olá amigos do GV ensino! No tutorial de hoje vou mostrar pra vocês o que a função CORRESP do Excel faz – e, é claro, ensinar vocês a usá-la!

Normalmente a função CORRESP não aparece sozinha. É muito comum utilizá-la junto com a função DESLOC. Entretanto, nos tutoriais que vejo por ai, dá-se muito destaque à função DESLOC, e pouco à função CORRESP. Vamos entendê-la direitinho!

Para começar, vamos criar uma lista com 5 nomes, em qualquer lugar dentro do Excel.

Lista com alguns nomes
Lista com alguns nomes

A primeira coisa que você tem de entender é que a função CORRESP trabalha com listas! Lista de nomes, códigos, qualquer tipo de lista.

E o que a função CORRESP faz com uma lista? Guarde bem isso: a função CORRESP faz uma busca. Isso mesmo, uma busca! Ela vai pegar toda a sua lista e buscar alguma coisa nela.

Tá OK Gabriel, já entendi. O CORRESP faz uma busca. OK. Mas, o que o CORRESP faz com essa busca?

Caríssimo aluno, eis a questão chave. A função CORRESP indica qual a posição de um elemento em uma lista.

Não entendeu? Veja a lista que nós fizemos na figura anterior, com cinco nomes: Gabriel, João, Ana Paula, Sara e Lobato. A lista começa na célula B7 e vai até a B11.

Se usarmos a função CORRESP, ela irá dizer pra gente qual é a posição de algum nome. Por exemplo, Sara. Qual é a posição do nome Sara?

Se considerarmos que a nossa lista começa em B7 e vai até B11, então o nome Sara está na posição 4, pois ele é o quarto elemento de nossa lista!

Está claro agora o que é posição?

Se você entendeu tudo até aqui, então considere-se pronto para usar a função CORRESP!

Vá até uma célula qualquer do Excel e digite =CORRESP( e, em seguida, clique no botão INSERIR FUNÇÃO, conforme a imagem abaixo:

Inserir Função
Inserir Função

Irá aparecer a tela Argumentos da Função. E, como podemos ver abaixo, a função CORRESP precisa de 3 informações, sendo 2 obrigatórias e 1, a última, opcional.

Argumentos da função CORRESP
Argumentos da função CORRESP

Agora ficou fácil.

Em Valor Procurado, você deverá colocar o valor que deseja buscar na lista. No caso da nossa lista, se trata de uma lista de nomes. Então, vamos supôr que queremos procurar a posição do nome Sara. Então, digite, entre aspas, em Valor Procurado, “Sara”.

Em Matriz Procurada, vamos selecionar onde está a nossa lista. Basta clicar no campo em branco Matriz Procurada, levar o mouse até a tela do Excel e selecionar a nossa lista.

Até aqui tudo deverá ficar assim:

Resultado
Resultado

Repare que em Matriz_Procurada está o intervalo de células que contém a nossa lista de nomes.

Em Tipo_correspondência, só há 3 valores possíveis: -1, 0 ou 1.

  • Se for -1, o Excel irá procurar na lista algum valor igual ao procurado. Se não houver um igual, ele irá procurar algum valor menor, mas que seja o mais próximo possível daquele procurado. Por exemplo, se procurarmos o valor 4 e não houver ele na lista, o Excel irá procurar pelo 3; se não houver o 3, irá procurar pelo 2. E assim por diante, até encontrar algum valor. Detalhe: para funcionar, a lista deverá estar em ORDEM DECRESCENTE.
  • Se for 0, o Excel irá procurar na lista a correspondência exata ao valor procurado. Se não houver, simplesmente irá retornar um erro de valor não disponível (#N/D).
  • Se for 1, o Excel irá procurar na lista algum valor igual ao procurado. Se não houver um igual, ele irá procurar algum valor maior, mas que seja o mais próximo possível daquele procurado. Por exemplo, se procurarmos o valor 4 e não houver ele na lista, o Excel irá procurar pelo 5; se não houver o 5, irá procurar pelo 6… e assim por diante, até encontrar algum valor. Para funcionar, a lista deve estar em ORDEM CRESCENTE.

No nosso caso, queremos que o Excel procure a correspondência exata ao nome que escolhemos, nem maior, nem menor. Portanto, vamos colocar 0 (zero).

Clique em OK. O resultado será o número 4, pois essa é a posição que o nome pesquisado (Sara) se encontra na Matriz_procurada que selecionamos!

Resultado do nosso CORRESP
Resultado do nosso CORRESP

Se colocarmos o nome “Sara” no lugar do nome João, o resultado retornado pela função CORRESP não será mais 4, e sim 2:

Resultado após alteração na lista
Resultado após alteração na lista

Repare que agora temos 2 nomes “Sara” em nossa lista. Mas ele pega sempre a posição do primeiro.

Entendendo melhor o Tipo Correspondência

Para entendermos o Tipo_Correspondência, vamos criar agora uma lista com valores numéricos.

Lista Numérica de exemplo
Lista Numérica de exemplo

Vamos criar agora uma função CORRESP que retorne pra gente a posição do número 13. Se quisermos a correspondência exata, devemos colocar 0 nesse item.

Usando Correspondência Exata
Usando Correspondência Exata

Veja em “Resultado da fórmula” que o valor que a função CORRESP irá nos retornar é 7, indicando que o número 13 está na posição 7 de nossa lista. O que é verdade, pois ele é o sétimo item da lista!

Se formos usar o tipo de correspondência -1, que procura valores iguais ou menores aos desejados, deveremos, antes, ordenar a nossa lista em ordem decrescente. Para isso, basta selecionar toda a nossa lista e clicar no botão Z-A:

Botão Z->A
Botão Z->A

Nossa lista anterior, agora, deverá ficar assim:

Lista Reordenada
Lista Reordenada

Agora, ao usarmos -1 no Tipo de Correspondência, vejamos qual o resultado:

Usando Tipo de Correspondência -1
Usando Tipo de Correspondência -1

Repare que o resultado da fórmula é igual a 5, pois é na posição 5 que temos o número 13. Se tirarmos o número 13 da posição 5 e colocarmos algo como 12 (e mantendo a lista ordenada em ordem decrescente), o CORRESP irá nos retornar, agora o valor 4, pois agora, o valor maior que 13 mais próximo está na linha 4, que é 13,5. Veja:

CORRESP nos dizendo a posição do valor mais próximo de 13, que seja maior que 13.
CORRESP nos dizendo a posição do valor mais próximo de 13, que seja maior que 13.

Se formos usar o Tipo de Correspondência 1, teremos de ordenar a nossa lista de forma Crescente antes. Para isso, selecionamos toda a nossa lista e clicamos no botão A-Z:

Botão A-Z
Botão A-Z

Então, alteramos o Tipo de Correspondência para 1. O valor retornado é:

Resultado com Tipo de Correspondência igual a 1
Resultado com Tipo de Correspondência igual a 1

Retornou 4, pois agora, o menor valor mais próximo de 13 é o que está na 4a linha, ou seja, 12.

Enfim, é isso pessoal! Espero que tenha sido útil para vocês entenderem a função CORRESP e como ela funciona. Lembrando que se o tipo de correspondência for -1 ou 1, devemos classificar a lista em ordem decrescente ou crescente, ok?

Abraços a todos, fiquem com Deus!

18 de abril de 2013

5Respostas em "Entenda a função CORRESP no Excel"

  1. Uma pergunta..se eu tenho uma lista com vários nomes e todos eles repetem algumas vezes, e eu quero que para cada nome seja exibido o menor valor, que está em outra coluna, como faço?

  2. Obrigado. Excelente Artigo. Que Deus Abençoe Sua Bondade.

  3. Muito legal, a função =CORRESP foi bem explicada, inclusive quando mostra “2x sara” e ele mostra apenas a posição 2 pois é o primeiro registro com “sara”… Tem alguma forma dele retornar as “duas posições” em vez de retornar apenas a primeira? (se possível tudo em uma única célula separado por espaço ou virgula ou ponto virgula etc)

  4. Eu novamente: PARABÉNS NOVAMENTE pela publicação pois me ajudou a entender a função e tentar implementar aqui, mas ainda preciso de uma ajuda:
    O QUE TENHO e QUERO:
    – uma planilha com os CONtratos existentes (PLANILHA 01)
    (cód contrato, cliente, Tem Anexos, serviços, data etc)
    CON-0001 | JOAO | ANE-2222 | 01/01/2015
    CON-0002 | JOSE | ANE-3333 | 01/01/2015
    CON-0003 | NARA | ANE-4444; ANE-5555 | 01/01/2015

    – uma planilha com ANExos dos contratos existentes (PLANILHA 02)
    (cód anexo, cód contrato viculado, cliente, data etc…)
    ANE-2222 | CON-0001 | JOAO
    ANE-3333 | CON-0002 | JOSE
    ANE-4444 | CON-0003 | NARA
    ANE-5555 | CON-0003 | NARA

    Com a combinação ÍNDICE e CORRESP eu consigo comparar os valores e retornar um “cód anexo” da PLANILHA 02 no campo “Tem Anexos” da PLANILHA 01……… Porém só retorna o primeiro “cód anexo” que ele acha na ordem (no exemplo apenas o ANE-4444), o que não fica legal.

    =ÍNDICE(‘[PLANILHA_02.xls]2013 e anterior’!$D:$D;CORRESP(B6;'[PLANILHA_02.xls]2013 e anterior’!$D:$D;0))
    ____________________

    Pra quebrar um galho, apenas adicionei uma condicional SE para apenas exibir um texto caso acha algum resultado (independente da quantidade).

    =SE(B6=ÍNDICE(‘[PLANILHA_02.xls]2013 e anterior’!$D:$D;CORRESP(B6;'[PLANILHA_02.xls]2013 e anterior’!$D:$D;0));”possui anexo”;””)
    ____________________

    MAS O QUE EU QUERO, se possível, é que a célula “Tem Anexo” exiba todos os valores iguais da planilha 02 (igual exemplo acima, tudo na mesma célula, separado por vírgula ou ponto-vírgula ou simplesmente um espaço)

    Espero ter conseguido detalhar bem.
    Grande abraço

  5. Corrigindo, a fórmula pra quebrar um galho que estou usando é esta:
    =SE(ÉERROS(ÍNDICE(‘[PLANILHA_02.xls]2013 e anterior’!$D:$D;CORRESP(B6;'[PLANILHA_02.xls]2013 e anterior’!$D:$D;0)));””;”com anexo”)

    Apenas para corrigir mesmo, pois não é o que procuro como solução final.

Deixe sua mensagem

©GVensino - Todos os Direitos Reservados
css.php