Substituição rápida # N / D por 0 quando vlookup


20

Eu uso vlookupmuito no excel.

O problema está no #N/Avalor quando o valor de busca não é encontrado.

Nesse caso, geralmente substituímos por 0 usando

if(isna(vlookup(what,range,column,false));0; vlookup(what,range,column;false))

que repete o vlookup (what, range, column, false) duas vezes e faz a fórmula parecer feia e idiota para mim.

Você tem outras soluções para esse problema?

Respostas:


31

Qual versão do Excel? No Excel 2007 ou posterior, você pode usar a função IFERROR como esta

=IFERROR(VLOOKUP(A1,B2:E3,4,0),0)


correctomundo +1
Raystafarian

@Raystafarian Não é possível obter o que quer dizer :)
Nam G VU

@barry houdini Horay!
Nam G VU

@NamGiVU Eu só estava concordando com a resposta de Barry :)
Raystafarian

5

Você também pode usar IFNAse quiser detectar apenas erros de # N / D.

=IFNA(Formula,0)

Isso será exibido em 0vez do erro # N / A.


1

Isso é realmente muito poderoso, e eu venho pesquisando na web há algum tempo para responder a essa pergunta. No meu caso, no entanto, não quero substituir o #N/Apor a 0, mas, em vez disso, quero usar informações alternativas. No meu caso, se VLOOKUPnão encontrar nada, quero que use o conteúdo de outra célula. (Estou usando o Excel 2010, mas isso não importa) Suponha que a minha fórmula na célula E3em Sheet1, e os dados que eu quero puxar está em algum lugar Sheet2. Se não houver dados a serem encontrados Sheet2, desejo que meu celular use dados de Sheet1.

=IFERROR(VLOOKUP(A3,Sheet2!B2:E3,4,FALSE),Sheet1!D3)

Para o respondente original, OBRIGADO. Você tornou minha vida um pouco mais fácil hoje à noite. Espero que minha expansão desmedida em sua resposta também ajude alguém!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.