Fórmula do Excel: PROCV com números e texto -

Fórmula genérica

=VLOOKUP(val&"",table,col,0)

Resumo

Para usar a função VLOOKUP para recuperar informações de uma tabela onde os valores-chave são números armazenados como texto, você pode usar uma fórmula que concatena uma string vazia ("") para o valor de pesquisa numérico, forçando-o para texto. No exemplo mostrado, a fórmula em H3 é:

=VLOOKUP(id&"",planets,2,0) // returns "Earth"

onde id (H2) e planetas (B3: B11) são intervalos nomeados.

Observação: o exemplo é uma solução alternativa para o problema de números e texto incompatíveis, que causam um erro # N / A. Se não houver incompatibilidade, a solução alternativa não será necessária e você poderá usar uma fórmula VLOOKUP normal.

Explicação

Um erro comum de VLOOKUP é uma incompatibilidade entre números e texto. Normalmente, a coluna de pesquisa na tabela contém valores numéricos que se parecem com números, mas são, na verdade, números armazenados como texto. Quando um número genuíno é passado para PROCV como o primeiro argumento, a fórmula retorna um erro # N / A, mesmo que pareça haver uma correspondência. A tela abaixo mostra um exemplo desse problema:

Os números na coluna B são na verdade texto, portanto, o valor de pesquisa numérica, 3, falha, embora pareça que PROCV deve corresponder a B5 e retornar "Terra". Você pode inserir um número como um valor de texto precedendo o número com uma aspa simples (').

A melhor solução é garantir que os valores de pesquisa na tabela sejam realmente números. No entanto, se você não tiver controle sobre a tabela, poderá modificar a fórmula VLOOKUP para forçar o valor de pesquisa a corresponder ao tipo na tabela. No exemplo mostrado, forçamos o valor de pesquisa numérica ao texto concatenando uma string vazia:

=VLOOKUP(id,planets,2,0) // original =VLOOKUP(id&"",planets,2,0) // revised

E a fórmula revisada resolve o erro:

Você também pode fazer a mesma coisa com uma fórmula mais longa que utiliza a função TEXT para converter o número em texto:

=VLOOKUP(TEXT(id,"@"),planets,2,0)

Números e texto

Se você não tem certeza de quando terá números e texto, pode atender a ambas as opções envolvendo VLOOKUP na função IFERROR e usando uma fórmula que lida com os dois casos:

=IFERROR(VLOOKUP(id,planets,3,0),VLOOKUP(id&"",planets,3,0))

Aqui, primeiro tentamos uma fórmula VLOOKUP normal que assume tanto o valor de pesquisa quanto a primeira coluna nas tabelas são números. Se isso gerar um erro, tentamos novamente com a fórmula revisada. Se essa fórmula também falhar, VLOOKUP retornará um erro # N / A como sempre.

Artigos interessantes...