TOP

Unir tabelas (VLOOKUP)

O que é VLOOKUP

A função integrada VLOOKUP é uma das funções mais poderosas em Excel. Pertence aos três mais populares em Excel - depois de SUM e AVERAGE. Sua tarefa é encontrar o valor desejado na tabela de dados e exibi-lo na célula especificada.

A sintaxe da função inclui um valor de pesquisa (o que você está procurando), uma tabela com uma ou mais colunas (onde procurar), um número de índice de coluna (de qual coluna retornar os dados) e um tipo de pesquisa (um argumento adicional que permite escolher um resultado aproximado ou exato).

A função VLOOKUP é comumente usada para análise financeira, gerenciamento de dados e trabalho com bancos de dados. Usando esse recurso, os usuários podem encontrar informações de forma rápida e fácil em um grande conjunto de dados, o que pode economizar tempo e melhorar a precisão.

A função VLOOKUP procura valores verticalmente, ou seja, entre linhas (isso é indicado pela primeira letra V - Vertical). Em Excel, também existe uma função semelhante HLOOKUP, que possui funcionalidade semelhante, mas faz uma busca horizontal (H - Horizontal) por colunas.


Um exemplo de problema

Suponha que temos duas tabelas com dados - uma tabela de empréstimos e uma tabela de garantias:

Precisamos inserir automaticamente as garantias na tabela de empréstimos, com base no número do contrato, para posterior reporte.

Solução

Em Excel no conjunto padrão de funções na categoria Pesquisa e referência há uma função VLOOKUP. Esta função procura o valor especificado (no nosso exemplo, o número do contrato) na coluna mais à esquerda da tabela especificada (tabela de garantias) movendo-se de cima para baixo e, ao encontrá-los, exibe o valor da célula adjacente (tipo de garantia de empréstimo). Esquematicamente, a operação da função é assim:

Então, vamos usar a função VLOOKUP. Selecione a célula onde será inserido (E2) e abra o assistente de fórmula (menu Insert - Function). Na categoria (Pesquisa e Referência), encontre a função VLOOKUP e clique em OK. Uma janela aparecerá para inserir argumentos de função:

Preencha-os um por um:

Resta pressionar OK e copiar a função inserida em toda a coluna.

Desvantagens da função VLOOKUP

A principal desvantagem é que a busca pelo valor desejado só pode ocorrer na primeira coluna do intervalo determinado, e a função pode retornar o valor desejado apenas nas colunas à direita.

A segunda desvantagem de VLOOKUP é que a função para de funcionar se você remover ou adicionar uma coluna à tabela de pesquisa. Um elemento inserido ou excluído alterará o resultado da fórmula porque a sintaxe da função exige que você especifique todo o intervalo e o número da coluna específica da qual deseja extrair os dados.

Além disso, a função VLOOKUP tem um limite de comprimento de pesquisa de 255 caracteres, caso contrário, o erro #VALUE será retornado!

Problemas ao trabalhar com a função

A função VLOOKUP retorna um erro (#N/A) se:

  1. A pesquisa exata é permitida (argumento Pesquisa Range=0) e o valor pesquisado não está na tabela (Table).
  2. Pesquisa aproximada permitida (Pesquisa Range=1), mas na tabela (Table) em que procuramos os valores, os nomes não são classificados em ordem crescente.
  3. O formato da célula da qual retiramos o número da transação (por exemplo, C2 no nosso caso) e o formato da célula da primeira coluna (G2:G11) da tabela são diferentes (por exemplo, numérico e texto). Esta situação é particularmente típica quando são utilizados códigos numéricos em vez de nomes textuais (números de conta, códigos de identificação, datas, etc.). Neste caso, você pode usar as funções VALUE e TEXT para converter formatos de dados. Se parece com isso:
    =VLOOKUP(TEXT(C2);$G$2:$H$11;0).
  4. A função não encontra um valor porque o código contém espaços e caracteres invisíveis não imprimíveis (tape feeds, etc.). Neste caso, você pode usar a função de texto (TRIM) e (CLEAN) para removê-los:
    =VLOOKUP(TRIM(CLEAN(C2));$G$2:$H$11;0).

Supressão de erros

Para suprimir a mensagem de erro (#N/A) quando a função não consegue encontrar uma correspondência exata, você pode usar a função IFERROR. Esta função verifica se o erro (#N/A) é resultado de VLOOKUP e, em caso afirmativo, retorna uma string vazia ("") ou nula, caso contrário, o resultado de VLOOKUP.

Artigos sobre o tema: