Sua fórmula PROCV retorna #N/D mesmo quando você vê o valor procurado na tabela. Esse erro comum geralmente ocorre devido a espaços ocultos nos dados. Estes espaços podem estar no início, no final ou entre palavras, e não são visíveis à primeira vista. Este artigo explica por que esses espaços quebram o PROCV e mostra como usar a função ARRUMAR para limpar os dados e corrigir o erro.
Principais Conclusões: Corrigindo Erros #N/D no PROCV
- A função ARRUMAR: Remove todos os espaços do texto, exceto espaços únicos entre palavras.
- Usando ARRUMAR dentro do PROCV: Limpe o valor procurado diretamente na fórmula para corresponder a dados bagunçados.
- Aplicando ARRUMAR a um intervalo: Use uma coluna auxiliar para limpar permanentemente os dados de origem para todas as consultas futuras.
Por que o PROCV Falha em Dados com Espaços Ocultos
A função PROCV realiza uma correspondência exata por padrão quando seu quarto argumento é FALSO ou 0. Para que uma correspondência exata seja bem-sucedida, o valor procurado e o valor na primeira coluna da tabela devem ser idênticos. Uma célula contendo “IDProduto” não é o mesmo que “IDProduto ” com um espaço no final. Embora pareçam iguais, o Excel os trata como strings de texto diferentes.
Esses espaços ocultos geralmente vêm de dados importados de outros sistemas, copiados de páginas da web ou inseridos manualmente. A função ARRUMAR é a solução padrão porque remove todos os caracteres de espaço ASCII (código 32) de uma string de texto, exceto espaços únicos entre palavras. Ela exclui espaços iniciais, espaços finais e reduz múltiplos espaços consecutivos dentro do texto a um único espaço.
Outros Caracteres que Podem Causar #N/D
Embora os espaços sejam os culpados mais comuns, espaços ininterruptos (código 160), frequentemente encontrados em HTML, também podem causar incompatibilidades. ARRUMAR não os remove. A função LIMPAR remove caracteres não imprimíveis, e a função SUBSTITUIR pode atingir códigos de caractere específicos. Para uma limpeza completa, pode ser necessário combinar funções.
Passos para Usar ARRUMAR para Corrigir sua Fórmula PROCV
Você tem duas abordagens principais: limpar os dados na sua tabela de pesquisa permanentemente ou limpar o valor procurado dentro da própria fórmula. O método escolhido depende se você precisa de uma correção única ou de uma solução permanente para seu conjunto de dados.
Método 1: Limpar o Valor Procurado Dentro do PROCV
Este método é rápido e não altera seus dados de origem. Você envolve seu valor procurado com a função ARRUMAR.
- Identifique sua fórmula original
Localize a fórmula PROCV que está retornando #N/D. Por exemplo: =PROCV(A2; TabelaDados; 2; FALSO). - Envolva o valor procurado com ARRUMAR
Edite a fórmula para limpar o valor procurado. A nova fórmula deve ser: =PROCV(ARRUMAR(A2); TabelaDados; 2; FALSO). Isso instrui o Excel a remover espaços extras do valor na célula A2 antes de realizar a consulta. - Copie a fórmula para baixo
Pressione Enter e copie a fórmula corrigida para baixo na coluna. Os erros #N/D para linhas com valores com espaços agora devem ser resolvidos.
Método 2: Limpar seus Dados de Origem com uma Coluna Auxiliar
Se a primeira coluna da sua tabela de pesquisa contiver espaços, você deve limpar esses dados. Esta é uma correção mais permanente para todas as fórmulas que usam essa tabela.
- Insira uma nova coluna auxiliar
Insira uma nova coluna à direita da coluna que contém seus valores de pesquisa bagunçados em sua tabela de dados. - Aplique a função ARRUMAR
Na primeira célula da nova coluna, insira uma fórmula como =ARRUMAR(B2), onde B2 é a primeira célula com os dados originais bagunçados. Pressione Enter. - Preencha a fórmula para baixo
Clique duas vezes no alça de preenchimento (o pequeno quadrado no canto inferior direito da célula) para copiar a fórmula ARRUMAR para toda a coluna. - Converta fórmulas em valores
Selecione toda a nova coluna de resultados de ARRUMAR. Pressione Ctrl+C para copiar, clique com o botão direito na seleção, escolha Colar Especial e selecione Valores. Clique em OK. Isso substitui as fórmulas pelo texto limpo. - Atualize seu intervalo PROCV
Exclua ou oculte a coluna original bagunçada. Ajuste o argumento table_array da sua fórmula PROCV para referenciar a nova coluna limpa como a primeira coluna de sua tabela de pesquisa.
Se ARRUMAR Não Resolver o Erro #N/D
Às vezes, apenas ARRUMAR não é suficiente. Outros problemas de formatação podem impedir uma correspondência exata no PROCV.
PROCV Ainda Retorna #N/D Após Usar ARRUMAR
Se o erro persistir, o problema pode ser espaços ininterruptos. Use a função SUBSTITUIR para remover o código de caractere 160. Teste com uma fórmula como =SUBSTITUIR(A2; CARACT(160); “”). Você pode aninhar isso dentro de ARRUMAR para uma limpeza completa: =ARRUMAR(SUBSTITUIR(A2; CARACT(160); “”)).
Números Armazenados como Texto Causam #N/D
Se seu valor procurado é um número, mas a tabela tem números armazenados como texto, ou vice-versa, o PROCV falhará. Use a função VALOR para converter texto em números, ou a função TEXTO para converter números em texto, garantindo que ambos os lados tenham o mesmo tipo de dados.
Casas Decimais ou Formatos de Data Inconsistentes
Para consultas numéricas ou de data, pequenas diferenças de arredondamento ou sistemas de data diferentes podem causar incompatibilidades. Certifique-se de que tanto o valor procurado quanto os dados da tabela estejam formatados de forma idêntica e tenham o mesmo valor subjacente.
ARRUMAR vs. Outras Funções de Limpeza de Texto
| Item | Função ARRUMAR | Função LIMPAR | Função SUBSTITUIR |
|---|---|---|---|
| Propósito Principal | Remove espaços extras | Remove caracteres não imprimíveis | Substitui texto ou caracteres específicos |
| Lida com Código 32 (espaço) | Sim | Não | Sim, se especificado |
| Lida com Código 160 (espaço ininterrupto) | Não | Não | Sim, com CARACT(160) |
| Caso de Uso Comum | Corrigir erros de PROCV de dados importados | Limpar dados de sistemas legados | Remover símbolos específicos ou quebras de linha |
| Exemplo de Fórmula | =ARRUMAR(A1) | =LIMPAR(A1) | =SUBSTITUIR(A1; CARACT(160); “”) |
Agora você pode corrigir erros persistentes de #N/D no PROCV identificando e removendo espaços ocultos com a função ARRUMAR. Para uma solução robusta, combine ARRUMAR com VALOR ou SUBSTITUIR para lidar com números armazenados como texto e espaços ininterruptos. Em seguida, explore o uso da função XLOOKUP, que oferece opções de correspondência mais flexíveis e uma sintaxe mais simples. Para limpeza avançada, use a guia Transformar do Power Query para limpar colunas e remover duplicatas, prevenindo erros em futuras importações de dados.