O VLOOKUP A função do Google Sheets talvez seja uma das funções mais usadas no Google Sheets. Ela significa Vertical Lookup (Pesquisa vertical). Ela procura um valor-chave na primeira coluna do intervalo de entrada e retorna o valor de uma célula especificada da linha em que a chave foi encontrada. Você pode esperar um erro se a chave não existir.
Sintaxe
- chave_de_busca - é o valor que a função VLOOKUP usa para pesquisar.
- alcance - é a referência ao intervalo de células em que estamos fazendo a pesquisa. O aplicativo Planilhas Google procura a chave na primeira coluna do intervalo.
- índice - é o índice da coluna da célula dentro do intervalo, cujo valor a função retorna. O índice da primeira coluna dentro do intervalo alcance é 1, o segundo no alcance é 2 e assim por diante. Por exemplo, se inserirmos 3 nesse parâmetro, a função VLOOKUP retornará o valor da célula da terceira coluna e a linha na qual ele encontra o chave_de_busca.
- [is_sorted] - é um parâmetro opcional que é TRUE por padrão. Isso indica se a primeira coluna da tabela alcance é classificado em ordem crescente ou não. Caso contrário, devemos especificar o valor como FALSE.
Como usar a função VLOOKUP
Números na primeira coluna
Vamos testar alguns exemplos. Aqui está um conjunto de dados de teste com números de vendas para um grupo de vendedores. Tentarei responder a vários cenários de casos de negócios (coluna D), usando VLOOKUP. Você observará como o valor do parâmetro de índice afeta o resultado.
Escolherei o primeiro exemplo aqui para dissecar e garantir que você entenda o uso básico da função. A fórmula =VLOOKUP(11876,A2:C11,2,FALSE) é usado para instruir a função a procurar o valor 11.876 no intervalo de células de A2 a C11. Depois de encontrar o valor, a função é instruída a retornar os dados na segunda coluna da linha em que os dados foram encontrados. O False indica que os dados não estão classificados e que você deseja uma correspondência exata com a chave de pesquisa.
Há um aspecto interessante a ser observado no último caso (linha # 7 acima). A função retornou um erro #N/A. Por quê? Isso é, conforme explicado na descrição do erro, porque o valor de vendas $15000 não existe na primeira linha. Como especifiquei que quero uma correspondência exata (indicando False para o parâmetro is_sorted), ela não pode retornar um valor apropriado.
O curioso caso de [is_sorted]
Nos exemplos, escolhi FALSE para o último parâmetro, que diz à função para encontrar uma correspondência exata com a chave de pesquisa. Normalmente, é assim que a função VLOOKUP é usada. Mas o que acontece quando, em vez disso, você usa True para encontrar uma correspondência aproximada?
Aqui, há dois exemplos que usam o VLOOKUP para encontrar a pessoa com $12.000 de vendas. A primeira função usa um is_sorted de False, que diz à função para encontrar uma correspondência exata. Como não há nenhum vendedor com exatamente $12.000 de vendas, a função retorna um erro.
O segundo exemplo é idêntico, exceto pelo fato de usar True em vez disso, o que informa à função que os dados estão classificados e que ela deve encontrar uma correspondência aproximada. A função então tenta encontrar o número de vendas mais próximo de $12.000 e retorna o nome do vendedor correspondente - Finch.
Observe que o vendedor mais próximo de $12.000 vendas é, na verdade, Gary. A função VLOOKUP encontra uma correspondência aproximada ao encontrar o valor mais próximo, mas não mais do que a chave de pesquisa. Portanto, ela retorna Finch aqui, mesmo que Gary esteja tecnicamente mais próximo da chave de pesquisa. Esse é um recurso importante a ser observado, pois pode afetar seus resultados ao usar essa função!
Caso de uso: Cadeias de caracteres classificadas na primeira coluna
Agora que você está mais familiarizado com a função, vamos tentar um conjunto de dados de exemplo no qual a primeira coluna tem valores de cadeia classificados, conforme mostrado abaixo. Há dois exemplos para cada um dos três casos disponíveis, mas com uma distinção do parâmetro is_sorted. Observe como a função VLOOKUP está se comportando.
Você pode ver que o valor TRUE ou FALSE para is_sorted não afeta realmente o comportamento quando ele encontra o parâmetro chave_de_busca dentro da primeira coluna do intervalo. Mas um desenvolvimento interessante acontece quando ele não encontra uma correspondência exata para o chave_de_busca. No caso de FALSE (linha # 8), ele estava procurando uma correspondência exata. Mas no caso de TRUE (linha # 9), ele está procurando uma correspondência aproximada e, em vez de Greg, retorna as informações de Gary. Esse comportamento pode ou não ser desejável, dependendo de sua situação!
Cadeias de caracteres não classificadas na primeira coluna
Os dados para esse caso são essencialmente os mesmos usados acima, exceto pelo fato de haver cadeias de caracteres não classificadas na primeira coluna.
Diferentemente do exemplo anterior, o uso de valores TRUE e FALSE para o quarto parâmetro está gerando resultados diferentes. Como os dados não estão classificados, a função não pode fornecer uma correspondência aproximada precisa. Quando os dados não estão classificados, os resultados estão corretos somente quando usei FALSE para is_sorted.
Então, qual é o resultado final?
Nunca minta para o Planilhas Google no is_sorted parâmetro - se você fizer isso, ele retribuirá o favor!
Múltiplas correspondências na primeira coluna
Haverá ocasiões em que você poderá encontrar várias instâncias do mesmo valor na primeira coluna. No exemplo abaixo, Barry aparece duas vezes. O que acontece se você usar a função VLOOKUP nesse cenário?
Você deve ter notado que ele pega o primeiro Barry que encontra na lista. E o segundo Barry não é considerado.
Desvantagens da função VLOOKUP
Há dois problemas com essa fórmula:
- Para procurar chave_de_busca, ele sempre usa a primeira coluna na entrada alcance. Portanto, não é possível com a função VLOOKUP buscar um valor de célula que esteja à esquerda da coluna de pesquisa.
- A função não é suficientemente dinâmica, pois os valores do índice da coluna não são atualizados se inserirmos uma coluna entre a entrada alcance.
Há uma alternativa que resolve os dois problemas acima. Leia a explicação sobre a alternativa Combinação das funções INDEX e MATCH.
Nota do editor: Esta é uma versão revisada de uma postagem anterior que foi atualizada para maior precisão e abrangência.
