PROCV (função PROCV)

Sugestão: Experimente utilizar a nova função PROCURARX, uma versão melhorada da função PROCURARV que funciona em qualquer direção e devolve correspondências exatas por predefinição, tornando a utilização mais fácil e mais conveniente do que a antecessora.

Utilize a ação PROCURAR QUANDO precisar de encontrar algo numa tabela ou num intervalo de linhas. Por exemplo, procure o preço de uma peça de automóvel através do número da peça ou encontre o nome de um funcionário com base no respetivo ID de funcionário.

De uma forma resumida, a função PROCV diz:

=PROCURAR(O que pretende procurar, onde o pretende procurar, o número da coluna no intervalo que contém o valor a devolver, devolve uma correspondência Aproximada ou Exata – indicada como 1/VERDADEIRO ou 0/FALSO).

O seu browser não suporta vídeo.

Sugestão: O segredo para procurar é organizar os seus dados de modo a que o valor que procura (Fruta) se encontre à esquerda do valor devolvê-lo (Montante) que pretende encontrar.

Utilize a função PROCV para procurar um valor numa tabela.

Sintaxe 

VLOOKUP (valor_proc, matriz_tabela, núm_índice_coluna, [intervalo_pesquisa])

Por exemplo:

  • =PROCURARV(A2;A10:C20;2;VERDADEIRO)

  • =PROCV("Rodrigues";B2:E7;2;FALSO)

  • =PROCURARV(A2;'Detalhes do Cliente'! A:F,3,FALSO)

Nome do argumento

Descrição

valor_proc    (obrigatório)

O valor que pretende pesquisar. O valor que pretende procurar tem de estar na primeira coluna do intervalo de células que especificou no argumento table_array valor.

Por exemplo, se a matriz-de-tabela abranger as células B2:D7, a lookup_value tem de estar na coluna B.

O valor_proc pode ser um valor ou uma referência a uma célula.

matriz_tabela    (obrigatório)

O intervalo de células em que o PROCV irá pesquisar o Valor_proc e o valor de retorno. Pode utilizar um intervalo com nome ou uma tabela e pode utilizar nomes no argumento em vez de referências de célula. 

A primeira coluna no intervalo de células tem de conter o lookup_value. O intervalo de células também tem de incluir o valor devolto que pretende encontrar.

Saiba como selecionar intervalos numa folha de cálculo.

núm_indice_coluna    (obrigatório)

O número da coluna (começando em 1 para a coluna mais à esquerda table_array) que contém o valor devolvê-lo.

intervalo_pesquisa   (opcional)

Um valor lógico que especifica se pretende que PROCV localize uma correspondência aproximada ou uma correspondência exata:

  • Correspondência aproximada – 1/VERDADEIRO assume que a primeira coluna na tabela está ordenada numericamente ou alfabeticamente e irá procurar o valor mais próximo. Este é o método predefinido, se não especificar nenhum. Por exemplo, =PROCURARV(90;A1:B100;2;VERDADEIRO).

  • Correspondência exata – 0/FALSO procura o valor exato na primeira coluna. Por exemplo, =VLOOKUP("Silva",A1:B100,2,FALSO).

Como começar

Existem quatro informações de que irá precisar para criar a sintaxe da função PROCV:

  1. O valor que pretende procurar, também designado valor de pesquisa (valor_proc).

  2. O intervalo onde o valor de pesquisa se encontra. Lembre-se de que o valor de pesquisa deve encontrar-se na primeira coluna no intervalo para que a função PROCV funcione corretamente. Por exemplo, se o seu valor de pesquisa se encontrar na célula C2, o seu intervalo deve começar com C.

  3. O número da coluna no intervalo que contém o valor devolvido. Por exemplo, se especificar B2:D11 como o intervalo, deve contar b como a primeira coluna, C como a segunda e assim por cima.

  4. Opcionalmente, pode especificar VERDADEIRO se pretender uma correspondência aproximada ou FALSO para uma correspondência exata do valor devolvido. Se não especificar nada, o valor predefinido será sempre VERDADEIRO ou uma correspondência aproximada.

Agora experimente colocar tudo o que foi mencionado acima da seguinte forma:

=VLOOKUP(valor de procura, intervalo que contém o valor de procura, o número da coluna no intervalo que contém o valor devoltido, Correspondência aproximada (VERDADEIRO) ou Correspondência exata (FALSO)).

Exemplos

Eis alguns exemplos de PROCURAR:

Exemplo 1

=PROCURARV (B3,B2:E7,2,FALSO)

A proCV procura Porcana na primeira coluna (coluna B) no table_array B2:E7 e devolve o Olivier da segunda coluna (coluna C) da table_array.  Falso devolve uma correspondência exata.

Exemplo 2

=VLOOKUP (102,A2:C7,2,FALSO)

PROCV procura uma correspondência exata (FALSO) do apelido para 102 (lookup_value) na segunda coluna (coluna B) no intervalo A2:C7 e devolve Mota.

Exemplo 3

=SE(VLOOKUP(103;A1:E7;2;FALSO)="Souse";"Localizado";"Não encontrado")

A if verifica se PROCV devolve Sousa como o apelido da correspoindagem de funcionários para 103 (lookup_value) em A1:E7 (table_array). Uma vez que o apelido correspondente a 103 é Leal, a condição SE é falsa e é apresentada a indicação Não Encontrado.

Exemplo 4

=INT(FRAÇÃO ANO(DATA(2014;6;30);PROCURARV(105;A2:E7;5;SINALIZADOR);1))

A procura da data de nascimento do funcionário correspondente a 109 (lookup_value) no intervalo A2:E7 (table_array) e devolve 04/03/1955. Em seguida, a FRAÇÃO ANO subtrai esta data de nascimento a 6/2014/30 e devolve um valor, que é então convertido por INY no número inteiro 59.

Exemplo 5

IF(ISNA(VLOOKUP(105,A2:E7,2,FLASE))=TRUE,"Employee not found",VLOOKUP(105,A2:E7,2,FALSE))

A verificação SE verifica se a procura devolve um valor para o apelido da coluna B para 105 (lookup_value). Se a procura de um apelido encontrar um apelido, a indicação SE apresentará o apelido, caso contrário, SE devolverá Funcionário não encontrado. A isNA garante que, se a #N/A devolver a #N, o erro é substituído por Funcionário não encontrado, em vez de #N/D.



Neste exemplo, o valor devolvo é Berke, que é o apelido correspondente a 105.

Pode utilizar a inspeção VLOOK para combinar várias tabelas numa só, desde que uma das tabelas tenha campos em comum com todas as outras. Isto pode ser especialmente útil se precisar de partilhar um livro com pessoas que têm versões mais antigas do Excel que não suportam funcionalidades de dados com múltiplas tabelas como origens de dados ao combinar as origens numa tabela e ao alterar a origem de dados da funcionalidade de dados para a nova tabela, a funcionalidade de dados pode ser utilizada em versões mais antigas do Excel (desde que a funcionalidade de dados seja suportada pela versão anterior).

Uma ficha com colunas que utilizam PROCV para obter dados de outras tabelas

Aqui, as colunas A-F e H têm valores ou fórmulas que só utilizam valores na mesma e as restantes colunas utilizam PROCV e os valores da coluna A (Código de Cliente) e da coluna B (Advogado) para obter dados de outras tabelas.

  1. Copie a tabela que tem os campos comuns para uma nova livro e dê-lhe um nome.

  2. Clique em Ferramentas > de Dados > Relações para abrir a caixa de diálogo Gerir Relações.

    A caixa de diálogo Gerir Relações
  3. Para cada relação listada, tenha em atenção o seguinte:

    • O campo que liga as tabelas (listados entre parênteses na caixa de diálogo). Esta é a lookup_value para a sua fórmula PROCURAR.

    • O nome da Tabela de Procura Relacionada. Esta é a table_array na sua fórmula PROCURAR.

    • O campo (coluna) na Tabela de Pesquisa Relacionada que tem os dados que pretende na nova coluna. Estas informações não são apresentadas na caixa de diálogo Gerir Relações - terá de ver a Tabela de Pesquisa Relacionada para ver que campo pretende obter. Deve anotar o número da coluna (A=1), que é a col_index_num na sua fórmula.

  4. Para adicionar um campo à nova tabela, introduza a sua fórmula PESQUISAV na primeira coluna vazia utilizando as informações recolhidas no passo 3.

    No nosso exemplo, a coluna G utiliza Advogados (o lookup_value) para obter os dados da Taxa de Faturação da quarta coluna (col_index_num = 4) da tabela da ficha de advogados, tblAttorneys (o table_array),com a fórmula =PROCV([@Attorney],tbl_Attorneys,4,FALSO).

    A fórmula também pode utilizar uma referência de célula e uma referência de intervalo. No nosso exemplo, seria =VLOOKUP(A2;'Advogados'! A:D,4,FALSO).

  5. Continue a adicionar campos até ter todos os campos necessários. Se estiver a tentar preparar um livro com funcionalidades de dados que utilizam várias tabelas, altere a origem de dados da funcionalidade de dados para a nova tabela.

Problema

O que correu mal

Valor devolvido errado

Se o intervalo_pesquisa é VERDADEIRO ou foi deixado de fora, a primeira coluna tem de ser ordenada por ordem alfabética ou numérica. Se a primeira coluna não está ordenada, o valor de retorno pode ter um resultado inesperado. Ordene a primeira coluna ou utilize FALSO para obter uma correspondência exata.

#N/D na célula

  • Se o intervalo_pesquisa for VERDADEIRO e se o valor do valor_proc for mais pequeno do que o valor mais baixo da primeira coluna da matriz_tabela, irá obter o erro #N/D.

  • Se o intervalo_pesquisa for FALSO, o valor do erro #N/D indica que não foi encontrado um número exato.

Para obter mais informações sobre como resolver erros #N/D na função PROCV, consulte Como corrigir um erro #N/D na função PROCV.

#REF! na célula

Se col_index_num for maior que o número de colunas na matriz-de-tabela,obterá as #REF! como valor de erro.

Para obter mais informações sobre como resolver #REF! no vLOOKUP, consulte Como corrigir um erro #REF!.

#VALOR! na célula

Se o table_array for inferior a 1, obterá o #VALUE! como valor de erro.

Para obter mais informações sobre como resolver erros #VALUE! na função PROCV, consulte Como corrigir um erro #VALOR! na função PROCV.

#NOME? na célula

O valor de erro #NOME? normalmente significa que faltam aspas à fórmula. Para procurar o nome de uma pessoa, certifique-se de que utiliza aspas no nome na fórmula. Por exemplo, introduza o nome como "Rodrigues" em =PROCV ("Rodrigues";B2:E7;2;FALSO).

Para obter mais informações, consulte Como corrigir um #NAME erro!.

Erros de #TRANSPOSIÇÃO! na célula

Este erro específico #SPILL! normalmente significa que a sua fórmula está a depender da interseção implícita do valor de procura e a utilizar uma coluna inteira como referência. Por exemplo, =VLOOKUP( A:A:C,2,FALSO). Pode resolver o problema ancorando a referência de procura com o operador@ desta forma: =VLOOKUP( @A:A,A:C,2,FALSO). Em alternativa, pode utilizar o método tradicional da consulta VLOOK E fazer referência a uma única célula em vez de uma coluna inteira: =VLOOKUP(A2,A:C,2,FALSO).

Faça o seguinte

Por que motivo

Utilize referências absolutas no intervalo_pesquisa

A utilização de referências absolutas permite-lhe preencher uma fórmula de forma a pesquisar sempre dentro do mesmo intervalo de pesquisa exato.

Saiba como utilizar referências de célula absolutas.

Não armazene valores de números ou datas como texto.

Ao procurar valores de números ou datas, certifique-se de que os dados na primeira coluna da matriz_tabela não estão armazenados como valores de texto. Caso contrário, o PROCV poderá devolver um valor incorreto ou inesperado.

Ordene a primeira coluna

Ordene a primeira coluna da matriz_tabela antes de utilizar PROCV, quando o intervalo_pesquisa for VERDADEIRO.

Utilizar carateres universais

Se range_lookup for FALSO e lookup_value for texto, pode utilizar os carateres wildcard — ponto de interrogação (?) e asterisco (*)— no lookup_value. Um ponto de interrogação corresponde a qualquer caráter individual. Um asterisco corresponde a qualquer sequência de carateres. Se pretender encontrar mesmo um ponto de interrogação ou asterisco, escreva um til (~) à frente do caráter.

Por exemplo, =PROCV("Fontan?",B2:E7,2,FALSO) irá procurar todas as instâncias de Mota com a última letra que pode variar.

Certifique-se de que os seus dados não contêm carateres inválidos.

Ao procurar valores de texto na primeira coluna, certifique-se de que os dados da primeira coluna não têm espaços à esquerda, espaços à direita, utilização inconsistente de plicas ( ' ou " ) e aspas ( ‘ ou “) ou carateres não imprimíveis. Nestes casos, o PROCV pode apresentar um valor inesperado.

Para obter resultados precisos, tente utilizar a função LIMPARB ou a função COMPACTAR para remover os espaços à direita após os valores de tabela numa célula.

Precisa de mais ajuda?

Pode sempre colocar uma pergunta a um especialista da Excel Tech Community (Comunidade Tecnológica do Excel) ou obter suporte na Comunidade de Respostas.

Consulte Também

Cartão de Referência Rápida: atualizador da função VLOOKUP
Cartão de Referência Rápida: sugestões de remoção de problemas do VLOOKUP
Como corrigir um #VALUE erro na função PROCURAR
Como corrigir um #N/D na função PROCURAR
Visão geral das fórmulas no Excel
Como evitar fórmulas quebradas
Detetar erros em fórmulas
Excel (por ordem alfabética)
Excel funções (por categoria)
VLOOKUP (pré-visualização gratuita)

Precisa de mais ajuda?

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

×