Programa
Se você já tentou criar uma fórmula lógica complexa no Excel, sabe como isso pode ser complicado. O mais difícil com os comandos IF()
aninhados é tentar descobrir qual condição vai para onde.
É por isso que o Excel introduziu uma nova função chamada IFS()
. É uma maneira mais limpa e simples de verificar várias condições sem se enrolar. Mostrarei a você como funciona o IFS()
, com exemplos e dicas para ajudá-lo a usá-lo com confiança.
O que é a função IFS() no Excel?
A função IFS()
nos ajuda a verificar várias condições simultaneamente. Ele examina cada condição na ordem em que você as escreve e fornece o resultado da primeira que é TRUE
.
Portanto, é uma maneira mais fácil de escrever o que costumava ser um conjunto confuso de fórmulas IF()
aninhadas. Em vez de empilhar várias funções do IF()
umas dentro das outras, o IFS()
lista todas as suas condições em um só lugar. No total, você pode adicionar até 127 pares condição-resultado, embora eu duvide que você precise de tantas condições.
Como a função IFS() funciona
Sua sintaxe é:
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2]…)
Aqui:
-
logical_test1
(obrigatório) é a primeira condição. -
value_if_true1
(obrigatório) retorna os resultados se logical_test1 forTRUE
. -
Os 126 argumentos restantes de
logical_test
evalue_if_true
são opcionais.
Como usar o IFS() do Excel
A função IFS()
retorna resultados diferentes com base nas condições. Você pode usar operadores lógicos como =
, <
, >
, <=
e >=
para criar sua lógica. Veja como você pode começar.
Opção 1: Usar o assistente de fórmula
Para usar um assistente de fórmula:
-
Clique na célula em que você deseja colocar a fórmula.
-
Vá para a guia Fórmulas e selecione Inserir função.
-
Na caixa de pesquisa, digite
IFS
e clique em Go (Ir). -
Selecione
IFS
, clique em OK e, em seguida, insira suas condições e resultados. -
Clique em OK novamente para aplicar a fórmula.
Essa é uma maneira rápida de criar uma fórmula sem precisar digitá-la você mesmo.
Use o Assistente de fórmulas para aplicar a função IFS(). Imagem do autor.
Opção 2: Escreva-o manualmente
Você também pode escrever a fórmula manualmente. Provavelmente, é isso que a maioria das pessoas faz. Tudo o que você precisa fazer é digitar =IFS(
na célula e construir sua lógica passo a passo. Suponha que você esteja atribuindo métodos de envio com base no tempo de entrega:
-
Se for 2 dias ou menos, isso seria
Express
-
Se for de 3 a 5 dias, isso seria
Standard
Para isso, aqui está a fórmula:
=IFS(B2<=2, "Express", B2<=5, "Standard")
Aplique a fórmula IFS() em uma célula. Imagem do autor.
Você também pode copiar sua fórmula para outras células. Para fazer isso, arraste o pequeno quadrado no canto inferior da célula (a alça de preenchimento). Isso aplicará a fórmula na coluna. Ou simplesmente clique duas vezes nele para preencher automaticamente com base em seus dados.
Dica profissional: O Excel atualiza automaticamente as referências de célula quando você copia uma fórmula. Se você quiser manter uma referência fixa, transforme-a em uma referência absoluta pressionando F4
(isso altera A1
para $A$1
).
Copie a fórmula usando um identificador de arquivo. Imagem do autor
Mas ele gera um erro #N/A
em uma célula porque nenhuma das condições é atendida. Para corrigir isso, adicione uma condição final usando TRUE
no final da fórmula. Isso funciona como um plano de backup; ele captura tudo o que não correspondeu anteriormente e fornece a você um resultado padrão.
=IFS(B2<=2, "Express", B2<=5, "Standard", TRUE, "Economy")
Isso remove o erro #N/A
e retorna o valor padrão.
Tratar o erro #N/A usando a condição final ELSE. Imagem do autor.
Exemplos do IFS() em ação
Agora vamos ver alguns exemplos do mundo real, onde a maioria das pessoas usa essa função.
Atribuição de notas
Você pode usar o site IFS()
para converter as pontuações dos alunos em notas com letras. Suponha que você tenha uma lista de alunos e suas pontuações nos testes. Você pode usar esta fórmula para transformar esses números em notas:
=IFS(C5<60,"F", C5<70,"D", C5<80,"C", C5<90,"B", C5>=90,"A")
Veja o que ele faz:
-
Se a pontuação for menor que 60, você receberá um
F
. -
Se for menor que 70, você receberá um
D
. -
Se você tiver menos de 80, isso é um
C
. -
Se for menor que 90, você receberá um
B
. -
Se você tiver 90 ou mais, isso é um
A
.
O Excel verifica cada condição em ordem e interrompe assim que encontra uma que seja TRUE
. Mesmo que mais de uma condição possa ser aplicada, somente a primeira correspondência conta.
Atribua notas aos alunos usando IFS(). Imagem do autor.
Tratamento de erros com TRUE
Você também pode usar o site IFS()
para mostrar uma mensagem personalizada com base em diferentes códigos de status, em vez de permitir que o Excel mostre um erro #N/A
. Por exemplo, se você tiver uma lista de códigos e quiser exibir uma mensagem com base em cada um deles, esta é uma fórmula que pode ser usada:
=IFS(A2=100,"OK", A2=200,"Warning", A2=300,"Error", TRUE,"Invalid")
Veja como isso funciona:
-
Se o código for 100, você verá
OK
. -
Se for 200, você verá
Warning
. -
Se for 300, você verá
Error
. -
Se não corresponder a nenhum desses itens, você verá
Invalid
.
Essa última parte é importante. Ele exibirá a mensagem com base no código. Se nenhuma correspondência exata for encontrada, a última condição TRUE
atuará como um fallback e retornará Invalid
.
Mostre uma mensagem com base no código usando a função IFS(). Imagem do autor.
Rótulos de texto condicional
Você também pode usar o programa IFS()
para classificar os itens em categorias como frutas, legumes ou bebidas para manter o controle à medida que novos itens são adicionados.
Aqui está uma fórmula simples para você fazer isso:
=IFS(A2="Grapes","Fruit", A2="Broccoli","Green Vegetable", A2="Tea","Beverage", TRUE,"Misc")
É isso que ele faz:
-
Se o item for
Grapes
, você veráFruit
. -
Se for
Broccoli
, você veráGreen Vegetable
. -
Se for
Tea
, você veráBeverage
. -
Se não corresponder a nenhum desses itens, você verá
Misc
.
Essa última linha (com TRUE
) é sua opção de backup. Ele captura tudo o que não se encaixa nas outras categorias.
Categorize o item usando IFS(). Imagem do autor.
Modelagem financeira
Também podemos usar o site IFS()
para fins de modelagem financeira. Vamos dar uma olhada em dois exemplos comuns:
Aplicar níveis de desconto
Você pode usar o site IFS()
para atribuir um desconto com base no valor total da compra de um cliente.
=IFS(B2>=500,"20% Discount", B2>=300,"10% Discount", B2>=100,"5% Discount", TRUE,"No Discount")
Veja como isso funciona:
-
Se o valor for igual ou superior a
500
, você retornará20% Discount
-
Se o valor for igual ou maior que
300
, você retornará10% Discount
. -
Se o valor for igual ou maior que
100
, você retornará5% Discount
. -
Se o valor for menor que
100
, a condição finalTRUE
retornaráNo Discount
.
Aplicar descontos usando IFS(). Imagem do autor.
Calcular dias de férias
Você também pode calcular o número de dias de férias a que um funcionário tem direito, com base no tempo que ele está na empresa. Para isso, use a seguinte fórmula:
=IFS(B2>=10,"30 Days", B2>=5,"20 Days", B2>=1,"10 Days", TRUE,"No Leave")
Veja a seguir como você se comporta:
-
10
ou mais anos significa30 Days
licença. -
5
Para9
anos significa20 Days
. -
1
Para4
anos significa10 Days
. -
Less than 1
ano significaNo Leave
.
Atribua dias de férias com base nos anos de serviço usando IFS(). Imagem do autor.
Conversão de dados
Você também pode usar o site IFS()
para converter tamanhos de arquivos de bytes em unidades mais legíveis, como KB, MB ou GB:
=IFS(B2<1024, B2 & " Bytes", B2<1048576, ROUND(B2/1024,1) & " KB", B2<1073741824, ROUND(B2/1048576,1) & " MB", TRUE, ROUND(B2/1073741824,1) & " GB")
Essa fórmula mostra:
-
Bytes
para valores abaixo de1024
-
KB
para valores abaixo de1
MB -
MB
para valores abaixo de1
GB -
GB
para qualquer coisa maior
Converta o tamanho do arquivo de bytes para KB, MB, GB usando IFS(). Imagem do autor.
IFS() vs. IF() vs. IF() aninhado
Ao trabalhar com várias condições no Excel, você tem três opções: IF()
Você tem três opções: IF(), IF() aninhado ou a função IFS()
. Cada um deles funciona de forma diferente, portanto, veja como você pode escolher o mais adequado.
Comparação de legibilidade
Se você estiver verificando apenas uma ou duas condições, a função básica IF()
é perfeita. É rápido, simples e dá conta do recado. Mas as coisas ficam complicadas quando você tenta verificar várias condições. É quando começamos a empilhar funções IF()
umas dentro das outras, o que torna a fórmula mais difícil de ler e ainda mais difícil de alterar posteriormente.
Aqui está um exemplo:
=IF(A1<60,"F",IF(A1<70,"D",IF(A1<80,"C",IF(A1<90,"B","A"))))
Funciona, mas não é fácil de seguir. Todos esses colchetes dificultam a leitura e a atualização.
O IF() aninhado é difícil de ler e entender. Imagem do autor.
Agora, veja a mesma lógica usando IFS()
em vez disso:
=IFS(A1<60,"F", A1<70,"D", A1<80,"C", A1<90,"B", A1>=90,"A")
Este parece muito mais simples. Cada condição é emparelhada diretamente com um resultado sem qualquer aninhamento e sobrecarga de colchetes. Portanto, se você quiser uma fórmula que seja fácil de ler, entender e corrigir posteriormente, o site IFS()
é uma ótima opção.
IFS() é muito mais fácil de ler e entender. Imagem do autor.
Considerações sobre o desempenho
A função IFS()
verifica todas as condições que você fornecer, mesmo que já tenha encontrado uma correspondência. Portanto, se você listar cinco condições, o Excel ainda avaliará todas as cinco.
Mas as funções aninhadas do IF()
são um pouco mais inteligentes. Eles usam "curto-circuito", o que significa que param de verificar assim que encontram a primeira condição TRUE
. Isso economiza um pouco de tempo em planilhas grandes com muitas fórmulas.
Comparação rápida: Quando usar o quê
Aqui está uma rápida comparação tabular para ajudar você a entender quando usar IF()
, nested IF()
e IFS()
:
Recurso |
IF() |
IF() aninhado |
IFS() |
Melhor para |
1-2 condições simples |
Lógica complexa (com foco no desempenho) |
Múltiplas condições (com foco na legibilidade) |
Legibilidade |
Muito fácil |
Mais difícil de acompanhar (muitos colchetes) |
Limpo e fácil de digitalizar |
Edição posterior |
Simples |
Pode ser complicado (colchetes em todos os lugares) |
Fácil de atualizar |
Desempenho |
Rápido |
Um pouco mais rápido (usa curto-circuito) |
Um pouco mais lento (verifica todas as condições) |
Exemplo de uso |
Verificações básicas de sim/não |
Preços escalonados em planilhas em massa |
Classificação, categorias, mensagens de fallback |
IFS vs. SWITCH()
IFS()
e SWITCH()
verificam várias condições em uma única fórmula independente, mas funcionam de maneiras diferentes. Aqui está uma comparação detalhada entre ambos:
Recurso |
IFS() |
SWITCH() |
Melhor para |
Diferentes condições usando lógica (>, <, =) |
Um valor comparado a várias correspondências exatas |
Você é compatível com operadores lógicos? |
Sim, ele é ótimo para intervalos ou desigualdades |
Não, ele só funciona com valores exatos |
Estilo de sintaxe |
Repete a condição completa todas as vezes |
Cleaner porque ele usa uma expressão verificada em relação aos valores |
Exemplo de uso |
Classifique os alunos por pontuação (por exemplo, 90+, 75-89...) |
Mapeie códigos para categorias (por exemplo, 1 = Norte, 2 = Sul...) |
Opção de reserva/padrão |
Use TRUE no final para um caso geral |
Adicionar um valor final (sem condição) como padrão |
Legibilidade |
Pode ficar longo com várias condições |
Mais conciso ao comparar a mesma expressão |
Flexibilidade |
Altamente flexível, pois pode lidar com diferentes expressões |
Flexibilidade limitada, pois fornece apenas correspondências exatas com uma expressão |
Coisas a considerar
Você deve ter em mente alguns aspectos ao trabalhar com a função IFS()
no Excel.
Erros comuns e como corrigi-los
Primeiro, vamos ver alguns erros comuns com os quais você pode se deparar.
Poucos argumentos
Se adicionarmos uma condição, mas esquecermos de incluir o que deve acontecer se ela for verdadeira (value_if_true
). O Excel mostra uma janela pop-up: "Você inseriu muito poucos argumentos para essa função."
Erro #N/A
#N/A
ocorrerá um erro quando nenhuma das condições da fórmula for TRUE
. O Excel precisa de pelo menos uma correspondência ou ficará travado. Se você não quiser exibir #N/A
, adicione TRUE
no final com um valor de fallback.
#VALOR! Erro
#VALUE!
O erro aparece quando um argumento logical_test
não retorna um TRUE
ou FALSE
claro. Talvez seja um erro de digitação ou talvez a condição não esteja correta. De qualquer forma, o Excel não saberá o que fazer com ele, portanto, verifique novamente sua lógica.
Dicas e práticas recomendadas
Agora, aqui estão algumas práticas recomendadas para tornar suas fórmulas melhores e mais simples:
-
Tente manter as coisas simples. Normalmente, dez ou menos condições são suficientes.
-
Adicione uma condição de fallback usando
TRUE
como sua última condição. Ele cobre todos os casos que não atendem às suas condições principais. -
Certifique-se de que todas as condições tenham um resultado e que seus testes estejam dando retorno para
TRUE
ouFALSE
. -
Teste sua fórmula com casos extremos, como 0, 100 ou até mesmo células em branco, para ter certeza de que ela lida com tudo da maneira que você espera.
Prós e contras
IFS()
tem alguns benefícios reais, mas você também deve tomar cuidado com alguns aspectos.
Prós |
Contras |
Mais limpo e mais fácil de ler do que o aninhado |
Não usa curto-circuito - ele verifica todas as condições, mesmo após uma correspondência |
Suporta até 127 condições |
Você precisa adicionar manualmente um fallback |
Mais fácil de depurar e seguir lógicas complexas |
Funciona apenas no Excel 2016 ou posterior |
Considerações finais
A função IFS()
é uma maneira prática de verificar várias condições sem que a fórmula fique confusa. É mais fácil de ler do que várias declarações IF()
empilhadas umas dentro das outras e torna sua lógica muito mais clara. Certifique-se de que você liste as condições na ordem correta e sempre adicione um fallback final usando TRUE
. Dessa forma, sua fórmula não será interrompida se nada corresponder.
Se a sua lógica for previsível e seguir regras claras, o site IFS()
é uma ótima maneira de manter a planilha organizada e fácil de gerenciar.
Sou um estrategista de conteúdo que adora simplificar tópicos complexos. Ajudei empresas como Splunk, Hackernoon e Tiiny Host a criar conteúdo envolvente e informativo para seus públicos.
Excel IFS() FAQS
Posso combinar IFS() com outras funções, como AND() ou OR()?
Sim, você pode usar as funções AND()
e OR()
dentro de uma fórmula IFS()
para tornar suas condições mais específicas ou flexíveis.
Por exemplo, um número na célula A1
pode ser categorizado como Low
, Medium
ou High
com base em seu intervalo de valores.
=IFS(AND(A1 > 0, A1 <= 10), "Low", AND(A1 > 10, A1 <= 20), "Medium", TRUE, "High")
A função IFS() suporta comparações de datas?
Sim, você pode comparar valores de data usando operadores lógicos, assim como números:
=IFS(A1TODAY(), "Future")