Menu

SEERRO no Excel (IFERROR): trocar #N/D e #DIV/0!

=SEERRO(B2/C2;0) retorna B2/C2, ou 0 quando a divisão dá erro. Veja a SEERRO com PROCV, como retornar uma célula vazia em vez de um erro, por que a SENÃODISP é a melhor escolha em buscas e por que esconder todos os erros pode esconder enganos de verdade.

Todas as planilhas desta página são ao vivo: mude um número ou uma fórmula e elas recalculam.

=SEERRO(B2/C2;0) retorna o resultado de B2/C2, ou 0 quando esse resultado é um erro. O primeiro argumento é a fórmula que você quer; o segundo é o que mostrar no lugar de qualquer erro que ela produza. A SEERRO se chama IFERROR em inglês, e a tabela mostra a fórmula assim: =IFERROR(B2/C2,0). Você também pode digitar as fórmulas em português, com ponto e vírgula.

Preço por unidade
E2
ABCDE
1ProductRevenueUnitsPlainWith IFERROR
2Pens$12080$1.50$1.50
3Paper$30050$6.00$6.00
4Ink$900#DIV/0!$0.00
5Tape$4530$1.50$1.50
6Clips$00#DIV/0!$0.00
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =SEERRO(B2/C2;0)

Ink e Clips têm 0 unidades, então a divisão simples na coluna D mostra #DIV/0!. A coluna E mostra $0.00 para elas e o preço normal em todas as outras linhas. Digite 15 em C4 e as duas colunas mostram o preço de Ink.

Sintaxe da SEERRO

=IFERROR(value, value_if_error)
  • value é a fórmula a calcular.
  • value_if_error é retornado quando value é qualquer erro: #N/D (#N/A em inglês), #VALOR! (#VALUE!), #REF!, #DIV/0!, #NÚM! (#NUM!), #NOME? (#NAME?), #NULO! (#NULL!) e os mais novos, como #CALC!. A tabela mostra os nomes de erro em inglês.
  • Se value não é um erro, a SEERRO retorna esse valor sem mudança.

A troca pode ser um número (0), um texto ("Not found"), um texto vazio ("") ou outra fórmula, por exemplo uma segunda busca em outra tabela: =SEERRO(PROCV(E2;A2:C6;3;FALSO);PROCV(E2;G2:I6;3;FALSO)).

SEERRO com PROCV

Uma busca retorna #N/D quando o valor não está na tabela. Envolver a busca na SEERRO mostra uma mensagem no lugar:

Buscar um preço
F2
ABCDEF
1ProductCategoryPriceLook forPrice
2AppleFruit$1.20Pear$1.50
3PearFruit$1.50KiwiNot found
4CarrotVegetable$0.80Milk$1.10
5BreadBakery$2.40
6MilkDairy$1.10
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =SEERRO(PROCV(E2;$A$2:$C$6;3;FALSO);"Not found")

Kiwi não está na lista, então F3 diz Not found. Digite Kiwi em A4 no lugar de Carrot e F3 encontra. Com a PROCX (XLOOKUP em inglês), você não precisa da SEERRO para isso, porque o quarto argumento dela é o valor de "não encontrado": =PROCX(E2;A2:A6;C2:C6;"Not found").

SENÃODISP: pegar só o #N/D

A SENÃODISP (IFNA em inglês) funciona como a SEERRO, mas só troca o #N/D. Nas buscas, quase sempre é isso que você quer: #N/D significa "não encontrado", que é uma resposta normal, enquanto qualquer outro erro significa que a própria fórmula está errada. Nesta tabela, as fórmulas pedem a coluna 4 de uma tabela de três colunas, um erro de digitação:

A SEERRO esconde um erro de digitação, a SENÃODISP mostra
F2
ABCDEFG
1ProductCategoryPriceLook forIFERRORIFNA
2AppleFruit1.2PearNot found#REF!
3PearFruit1.5
4CarrotVegetable0.8
5BreadBakery2.4
6MilkDairy1.1
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =SEERRO(PROCV(E2;$A$2:$C$6;4;FALSO);"Not found")

Pear está na tabela, mas F2 diz Not found: a SEERRO transformou o #REF! do número de coluna errado na mesma mensagem de um produto que falta. G2 deixa o #REF! passar, então você vê que a fórmula está quebrada. Mude o 4 para 3 em G2 e ela retorna 1.5. A SENÃODISP precisa do Excel 2013 ou posterior.

Retornar vazio em vez de um erro

Para não mostrar nada, use um texto vazio, duas aspas duplas, como troca:

Crescimento com células vazias no lugar dos erros
D2
ABCD
1MonthLast yearThis yearGrowth
2Jan20024020%
3Feb0150
4Mar180171-5%
5Apr90
6May25030020%
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =SEERRO((C2-B2)/B2;"")

Fevereiro e abril não tiveram vendas no ano passado, então o crescimento deles não pode ser calculado e a célula fica vazia. Os outros meses mostram 20%, menos 5% e 20%. Uma célula com "" guarda texto: a SOMA e a MÉDIA ignoram essa célula, mas =D3*2 dá #VALOR!. Se fórmulas seguintes fazem contas com a coluna, retorne 0.

Prática: busca com alternativa

Busca de estoque
F2
ABCDEF
1ProductStockLook forStock
2Apple40Kiwi
3Pear25
4Carrot60
5Bread12
6Milk30
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.

Sua vez: Em F2, busque o estoque do produto em E2 a partir de A2:B6, e mostre "Not found" quando ele não estiver na lista.

Por que esconder todos os erros pode esconder enganos

A SEERRO não conserta nada; ela decide o que a célula mostra. Antes de envolver uma fórmula nela:

  1. Descubra por que o erro acontece. Quando uma célula Units vazia causa #DIV/0!, a correção de verdade pode ser um dado que alguém precisa preencher, não um preço zero.
  2. Prefira a SENÃODISP nas buscas, para que um número de coluna errado (#REF!), um nome digitado errado (#NOME?) ou texto numa coluna de números (#VALOR!) continuem aparecendo.
  3. Nas divisões, teste o caso específico. =SE(C2=0;0;B2/C2) trata um divisor zero e mais nada; uma referência errada em B2 continua mostrando o seu erro. A página sobre #DIV/0! compara os dois jeitos.
  4. Escolha uma troca que não possa ser confundida com um dado. Um 0 numa coluna de preços parece um preço de verdade e baixa a média; "" ou "Not found" não.

Envolva a fórmula por último, quando ela já der o resultado certo nas linhas que deveriam funcionar.

Perguntas frequentes

Como uso a SEERRO com o PROCV?

Envolva a busca: =SEERRO(PROCV(E2;A2:C6;3;FALSO);"Not found"). Quando E2 não está na primeira coluna, a célula mostra Not found em vez de #N/D. =SENÃODISP(PROCV(E2;A2:C6;3;FALSO);"Not found") faz o mesmo e continua mostrando os outros erros.

Como faço a SEERRO retornar uma célula vazia?

Use um texto vazio como segundo argumento: =SEERRO(B2/C2;""). A célula parece vazia, mas guarda texto, então =D2+1 sobre ela dá #VALOR!; a SOMA e a MÉDIA ignoram essa célula.

Qual a diferença entre SEERRO e SENÃODISP?

A SEERRO troca qualquer erro: #N/D, #DIV/0!, #VALOR!, #REF!, #NOME?, #NÚM! e #NULO!. A SENÃODISP troca só o #N/D, o "não encontrado" das buscas, e deixa todos os outros erros aparecerem, para uma fórmula quebrada não ficar escondida.

Como troco #N/D por 0 no Excel?

Envolva a fórmula na SENÃODISP com 0 como valor: =SENÃODISP(PROCV(E2;A2:C6;3;FALSO);0). A PROCX já tem essa troca embutida como quarto argumento: =PROCX(E2;A2:A6;C2:C6;0).

Quais versões do Excel têm SEERRO e SENÃODISP?

A SEERRO existe desde o Excel 2007 e a SENÃODISP desde o Excel 2013. Em arquivos mais antigos você pode ver =SE(ÉERROS(B2/C2);0;B2/C2), que faz o mesmo trabalho da SEERRO, mas calcula a fórmula duas vezes.

Ilustração das linguagens de programação do Coddy

Aprenda a programar com o Coddy

COMEÇAR