O Excel possui algumas funções chamadas, por ele mesmo, como função de banco de dados. Na versão em português fica fácil identificar essas funções pois todas elas iniciam o nome com BD, como é o caso da função tema deste artigo, a BDEXTRAIR.
A DBEXTRAIR possui algumas características interessantes que talvez vão te fazer preferir ela ao invés da PROCV, ou da combinação ÍNDICE + CORRESP. Então, neste artigo, você verá como usar a função BDEXTRAIR e quais suas vantagens e desvantagens frente a outras funções mais famosas, como as mencionadas acima.
Para que serve a BDEXTRAIR
Esta função serve para buscar dados de um banco de dados, que pode ser um intervalo de células ou uma tabela, com base em um ou mais valores que já estão nesta base de dados. Soa bem familiar ao PROCV, não é mesmo?
Argumentos da função
A BDEXTRAIR é bem simples, possui apenas 3 argumentos, mas saber utilizá-los é crucial para que funcione de maneira correta, pois embora simples, não é lá tão intuitiva assim.
=BDEXTRAIR(banco_dados;campo;critérios)
Onde
banco_dados = É a base de dados de onde buscaremos os valores desejados, é OBRIGATÓRIO que a sua base de dados possua cabeçalho e que você os inclua em banco_dados junto com os dados em si. Por exemplo, sua tabela vai de A1:G50 sendo A1:G1 o cabeçalho, banco_dados deverá ser A1:G50.
campo = O cabeçalho do campo que você quer retornar ou o número que corresponde a posição do cabeçalho na área selecionada em banco_dados. Por exemplo, numa tabela com duas colunas, Nome e Idade, caso você queira buscar a idade com base no nome, o seu campo será “Idade” (ou o número 2, pois idade é a segunda coluna). Ou seja, o nome do cabeçalho (ou número) e não a área toda da coluna Idade.
critérios = O critério de busca INCLUINDO o nome do cabeçalho de onde o critério de busca pode ser encontrado. Por exemplo, para um critério igual a Brasil, numa coluna que se chama País, seu critério deverá ser País e Brasil juntos. O ideal aqui é fazer referência a duas células ao mesmo tempo, exemplo A1:A2, onde A1 = País e A2 = Brasil.
Com preguiça de ler? Assista ao vídeo
Exemplo prático
Na tabela abaixo temos o nome dos países das Américas do sul e norte, suas capitais e em qual dos dois hemisférios do continente o país está.
Utilizando a capital como nosso critério de busca, queremos retornar o nome do país e o continente em que se encontra.
Para isso, vou utilizar algumas células à direita da tabela.
Em E2, colocaremos o nome da capital que queremos buscar as informações. Importante notar que incluí em E1 o mesmo nome do cabeçalho no meu banco de dados, Capital.
Em G2, uma função BDEXTRAIR que retornará o país, com base na capital
E, em H2, outra função BDEXTRAIR que buscará o continente em que o país está, também com base na capital.
Nossa funcão BDEXTRAIR em G2 ficará assim:
=BDEXTRAIR(A1:C53;G1;E1:E2)
A1:C53 = A base de dados, a tabela inteira, incluindo o cabeçalho.
G1 = Célula onde está o nome da coluna (cabeçalho) cujo qual quero buscar os dados. Ele tem de ser idêntico ao cabeçalho original.
E1:E2 = O critério de busca junto com seu cabeçalho. Queremos encontrar o país com base na capital (Nassau) que está na coluna cujo cabeçalho é Capital.
De forma semelhante, para a célula H2, teremos a seguinte fórmula.
=BDEXTRAIR(A1:C53;H1;E1:E2)
A1:C53 = A base de dados, a tabela inteira, incluindo o cabeçalho.
H1 = Célula onde está o nome da coluna (cabeçalho) cujo qual quero buscar os dados. Ele tem de ser idêntico ao cabeçalho original. Agora buscando a célula H1, para Continente.
E1:E2 = O critério de busca junto com seu cabeçalho. Queremos encontrar o país com base na capital (Nassau) que está na coluna cujo cabeçalho é Capital.
Busca parcial
Com a função BDEXTRAIR também é possível fazer busca parcial, para o exemplo que montamos, digamos queremos buscar por Buenos Aires, no nosso critério, podemos escrever somente Buenos, e a fórmula já funcionará normalmente.
Dados repetidos
Diferente da função PROCV, que sempre retorna o primeiro dado encontrado, a BDEXTRAIR só funciona quando o critério é único na lista de dados, e quando não é, ao invés de retornar a primeira instância encontrada, ele retorna um erro #NUM!.
Veja no exemplo da image, que quando tentamos fazer uma busca parcial por Saint obtemos um erro, pois mais de 1 capital inicia seu nome com Saint.
Isso pode ser visto como uma limitação, mas também como uma vantagem, dependendo do que você deseja fazer na sua planilha.
Vantagens e desvantagens
Eu particularmente ainda prefiro a combinação ÍNDICE + CORRESP que é muito mais versátil, ou então a função XLOOKUP. Mas é sempre bom conhecer mais funções e nunca se sabe quando esta pode vir a calhar.
Vantagens dessa função sobre a PROCV são:
- Consegue buscar dados da direita para a esquerda.
- Não precisa contar o número de colunas de onde os dados devem vir.
- Tem busca parcial já embutida.
Desvantagens frente a PROCV:
- Não é dinâmica e não pode ser arrastada para várias células de forma fácil.
- Retorna erro quando os dados de critério possuem duplicados.
Excelente informação…muito bem explanada..parabens!