Applies ToExcel para Microsoft 365 Excel para Microsoft 365 para Mac Excel para a Web Excel 2024 Excel 2024 para Mac Excel 2021 Excel 2021 para Mac Excel 2019 Excel 2019 para Mac Excel 2016 Excel para Windows Phone 10

Este tópico descreve as razões mais comuns da FUNÇÃOV para um resultado erróneo na função e fornece sugestões para utilizar ÍNDICE e CORRESP .

Dica: Além disso, consulte o Cartão de Referência Rápida: dicas de solução de problemas de PROCV que apresenta os motivos comuns para problemas de #NA em um arquivo PDF conveniente. Você pode compartilhar o PDF com outras pessoas ou imprimir para sua própria referência.

Problema: O valor de pesquisa não está na primeira coluna no argumento matriz_tabela

Uma restrição de PROCV é que ela só pode procurar valores na coluna mais à esquerda na matriz de tabela. Se o valor de pesquisa não estiver na primeira coluna da matriz, você verá o erro #N/D

Na tabela a seguir, queremos recuperar o número de unidades vendidas para Kale.

Erro de #N/D no PROCV: O valor de pesquisa não está na primeira coluna da matriz da tabela

O erro #N/D resulta porque o valor de pesquisa “Kale” aparece na segunda coluna (Produto) do argumento table_array A2:C10. Nesse caso, o Excel está procurando-o na coluna A, não na coluna B.

Solução: Você pode tentar corrigir o problema ajustando o PROCV para fazer referência à coluna correta. Se isso não for possível, tente mover as colunas. Isso também pode ser altamente impraticável, se você tiver planilhas grandes ou complexas em que os valores de célula são resultados de outros cálculos ou talvez haja outros motivos lógicos pelos quais você simplesmente não pode mover as colunas. A solução é usar uma combinação das funções ÍNDICE e CORRESP, que pode pesquisar um valor em uma coluna independentemente de sua localização na tabela de pesquisa. Confira a próxima seção.

Considere usar ÍNDICE/CORRESP em vez disso

ÍNDICE e CORRESP são boas opções para muitos casos em que PROCV não atende às suas necessidades. A maior vantagem de ÍNDICE/CORRESP é que você pode pesquisar um valor em uma coluna em qualquer lugar na tabela de pesquisa. ÍNDICE retorna um valor de uma tabela/intervalo especificado, de acordo com sua posição. CORRESP retorna a posição relativa de um valor em uma tabela/intervalo. Usando ÍNDICE e CORRESP juntos em uma fórmula, você pode pesquisar um valor em uma tabela/matriz, especificando a posição relativa do valor na matriz/tabela.

Há várias vantagens de usar ÍNDICE/CORRESP em vez de PROCV:

  • Com ÍNDICE e CORRESP, o valor retornado não precisa estar na mesma coluna que a coluna de pesquisa. Isso é diferente do PROCV, no qual o valor retornado deve estar no intervalo especificado. Qual a importância disso? Com a função PROCV, você precisa saber o número da coluna que contém o valor de retorno. Embora isso soe simples, pode ser complicado quando você tem uma tabela grande e precisa contar o número de colunas. Além disso, se você adicionar ou remover uma coluna em sua tabela, você precisa recontar e atualizar o argumento col_index_num. Com ÍNDICE e CORRESP, não é necessário contar, já que a coluna de pesquisa é diferente da coluna que tem o valor de retorno.

  • Com ÍNDICE e CORRESP, você pode especificar uma linha ou uma coluna de uma matriz ou até mesmo especificar ambas. Isso significa que você pode pesquisar valores tanto verticalmente quanto horizontalmente.

  • ÍNDICE e CORRESP podem ser usados para procurar valores em qualquer coluna. Ao contrário do PROCV, que permite pesquisar valores apenas na primeira coluna de uma tabela, ÍNDICE e CORRESP funciona mesmo se o valor de pesquisa estiver na primeira, na última ou em qualquer outra coluna da tabela.

  • ÍNDICE e CORRESP oferece a flexibilidade de fazer referência dinâmica à coluna que contém o valor de retorno. Isso significa que você pode adicionar colunas à tabela sem interromper ÍNDICE e CORRESP. Por outro lado, PROCV será interrompido se você precisar adicionar uma coluna à tabela, pois ela faz uma referência estática à tabela.

  • ÍNDICE e CORRESP oferece mais flexibilidade com correspondências. ÍNDICE e CORRESP pode encontrar uma correspondência exata, um valor maior ou menor do que o valor de pesquisa. PROCV vai procurar apenas a correspondência mais próxima do valor (por padrão) ou o valor exato. O PROCV também presume, por padrão, que a primeira coluna da matriz de tabela está em ordem alfabética, e caso sua tabela não esteja configurada dessa forma, PROCV retornará a primeira correspondência mais próxima na tabela, que pode não ser a informação que você está procurando.

Sintaxe

Para criar uma sintaxe de ÍNDICE/CORRESP, é necessário usar o argumento de matriz/referência da função ÍNDICE e aninhar a sintaxe da CORRESP dentro dele. Isso assumirá o formato:

=ÍNDICE(matriz ou referência, CORRESP(lookup_value,lookup_array,[match_type])

Vamos usar ÍNDICE/CORRESP para substituir PROCV do exemplo acima. A sintaxe terá a seguinte aparência:

=ÍNDICE(C2:C10,CORRESPONDÊNCIA(B13,B2:B10,0))

Em bom português significa:

=ÍNDICE (Quero o valor de retorno de C2: C10 que vai CORRESPONDER (Kale, que está em algum lugar na matriz B2: B10, onde o valor de retorno é o primeiro valor correspondente a Kale))

Funções ÍNDICE e CORRESP podem ser usadas no lugar de PROCV

A fórmula procura o primeiro valor em C2: C10 que corresponde a Couve (em B7) e retorna o valor em C7 (100), que é o primeiro valor que corresponde a Couve.

Problema: A correspondência exata não foi encontrada

Quando o argumento procurar_intervalo for FALSO e PROCV não for capaz de encontrar uma correspondência exata em seus dados, ele retornará o erro #N/D.

Solução: se você tiver certeza de que os dados relevantes existem em sua planilha e PROCV não os está capturando, reserve um tempo para verificar se as células referenciadas não têm espaços ocultos ou caracteres não imprimíveis. Verifique também se as células seguem o tipo de dados correto. Por exemplo, as células com números devem ser formatadas como Númeroe não Texto.

Além disso, considere usar a função TIRAR ou ARRUMAR para limpar dados nas células.

Problema: O valor de pesquisa é menor do que o menor valor na matriz

Se o argumento procurar_intervalo é definido como VERDADEIRO e o valor de pesquisa é menor do que o menor valor na matriz, você verá o erro #N/D. VERDADEIRO procura uma correspondência aproximada na matriz e retorna o valor mais próximo menor que o valor de pesquisa.

No exemplo a seguir, o valor de pesquisa é 100, mas não há valores no intervalo B2:C10 menores do que 100; por isso ocorre o erro.

Erro #N/D em PROCV quando o valor de pesquisa é menor do que o menor valor na matriz

Solução:

  • Corrija o valor de pesquisa conforme necessário.

  • Se você não puder alterar o valor de pesquisa e precisar de maior flexibilidade com valores correspondentes, considere usar ÍNDICE/CORRESP em vez de PROCV. Consulte a seção acima neste artigo. Com ÍNDICE/CORRESP, você pode pesquisar valores maiores, menores ou iguais ao valor de pesquisa. Para mais informações sobre como usar ÍNDICE/CORRESP em vez de PROCV, consulte a seção anterior neste tópico.

Problema: A coluna de pesquisa não está em ordem crescente

Se o argumento procurar_intervalo estiver definido como VERDADEIRO e uma das colunas de pesquisa não estiver classificada em ordem crescente (de A a Z), você verá o erro #N/D.

Solução:

  • Altere a função PROCV para procurar uma correspondência exata. Para fazer isso, defina o argumento procurar_intervalo como FALSO. Nenhuma classificação é necessária para FALSO.

  • Use a função ÍNDICE/CORRESP para pesquisar um valor em uma tabela não ordenada.

Problema: O valor é um grande número de ponto flutuante

Se você tiver valores de tempo ou números decimais grandes em células, o Excel retornará o erro #N/D devido à precisão do ponto flutuante. Os números de ponto flutuante são números que aparecem após uma vírgula decimal. (Observe que o Excel armazena valores de hora como números de ponto flutuante.) O Excel não pode armazenar números com pontos flutuantes grandes, então, para que a função funcione corretamente, os números de ponto flutuante precisarão ser arredondados para cinco casas decimais.

Solução: Encurtar os números arredondando-os a cinco casas decimais com a função ARRED.

Precisa de mais ajuda?

Você pode sempre consultar um especialista na Excel Tech Community ou obter suporte nas Comunidades.

Confira também

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.