Conheça as funções condicionais no Excel

51
13191

As funções condicionais no Excel nos ajudam nas tomadas de decisões. Elas podem ser combinadas e aninhadas (você pode colocar uma função dentro de outra função) dependendo da situação. Vamos conhecer cada uma delas, mas antes vamos ver a tabela dos operadores lógicos:

Curso de Excel Online

Os operadores lógicos são:

> Maior

< Menor

>= Maior Igual

<= Menor Igual

= Igual

<> Diferente

Toda função condicional, depende de teste lógico. A ideia é que a função te retorne um valor dependendo de um critério que você estabeleça. Esses operadores serão utilizados nessas funções em seus testes lógicos e condições.

Função E

A função E nos retorna VERDADEIRO se todos os testes lógicos forem verdadeiros, ou falso caso um deles seja falso. Vamos exemplificar:

A sintaxe da Função E é: =E(Lógico;…;Lógico)

Podemos fazer vários testes lógicos na função. Veja o exemplo:

=E(1<30;30<>20;32>10)

 

Neste exemplo a função retornará VERDADEIRO porque 1 é menor do que 30 e 30 é diferente de 20 e 32 é maior do que 10, todos testes são verdadeiros, logo o retorno da função será VERDADEIRO.

Já neste exemplo:

=E(1>30;30<>20;32>10)

O retorno da função será FALSO porque 1 não é maior do que 30, quando um dos testes não for verdadeiro, o retorno da função será FALSO.

Podemos concluir que a função E apenas retornará VERDADEIRO quando todos os testes forem verdadeiros. Quando você entrar em testes lógicos da sua planilha, o ideal é que você utilize referências de células ao invés de colocar valores absolutos nos seus cálculos, pois assim, sempre que você mudar um valor, a função será recalculada e dará uma nova resposta.

Curso de Excel Online

Função OU

A função OU se comporta de maneira contrária a função E, se apenas um dos testes lógicos for VERDADEIRO, ela retornará VERDADEIRO, mesmo se os demais sejam falsos. Sua sintaxe é a seguinte:

=OU(Lógico;…;Lógico)

Veja o exemplo:

=OU(10>40;45<>50;6<3)

 

O retorno da função no exemplo será VERDADEIRO porque um dos testes lógicos é verdadeiro, veja: 10 não é maior que 40, mas 45 é diferente de 50, o resultado desse teste já é suficiente para a função retornar VERDADEIRO já que 6 não é menor do que 3.

Já nesse exemplo:

=OU(10>40;45>50;6<3)

O retorno do exemplo acima será FALSO porque todos os testes lógicos são falsos. Veja: 10 não é maior que 40; 45 não é maior que 50; 6 não é menor do que 3.

Podemos concluir que a função OU apenas retornará FALSO quando todos os testes forem falsos.

Função SE

Com a função SE diferentemente da função E ou OU, além de testar se a condição é verdadeira ou falsa, podemos indicar a ela o que fazer em cada situação, se ela executará um cálculo ou se retornará uma mensagem. Ela nos dará condição de automatizar nossa planilha de maneira inteligente.

Sua sintaxe é: =SE(teste_lógico;Valor_se_Verdadeiro;Valor_se_Falso)

Teste_lógico: como nas funções OU e E na função SE temos um teste lógico que determinará se a situação é verdadeira ou falsa, este teste poderá comparar dois valores que podemos indicar das seguintes formas: 10 > 20 ; A2<> B2 ; 10> C2. Podemos tanto utilizar valores absolutos como referência de células.

Valor_se_Verdadeiro: é o que a função retornará caso o teste_lógico seja verdadeiro, podemos indicar um cálculo, referenciar uma célula ou ainda apresentar uma mensagem. No caso da mensagem o texto deve ser posto entre aspas como nos exemplos:

A2 ; (A2 + A4) ; “Este é o Maior Valor”;

Valor_se_Falso: é o que a função retornará caso o teste_lógico seja falso, como no valor verdadeiro, podemos indicar um cálculo, referenciar uma célula ou ainda apresentar uma mensagem, neste caso a mensagem também deverá estar entre aspas, além de também poder utilizar o operador FALSO que é informado sem aspas como nos exemplos:

A2 ; (A2 + A4) ; “Este é o Maior Valor”; FALSO

Combinando funções

A função SE nos dá a possibilidade de combiná-la com a função E ou OU. Vamos supor que precisamos ter vários testes lógicos, e todos os resultados verdadeiros para retornar o valor_se_verdadeiro, para isso podemos combinar a função SE com a função E. Ou então que precisamos apenas de um valor verdadeiro, neste caso podemos combinar a função SE com a função OU. Vamos utilizar essas funções dentro da função SE no teste_lógico. Veja os exemplos:

=SE(E(A2<10;B2<20);”Preço mais baixo que todos os concorrentes”;”Preço mais alto que os concorrentes”)

=SE(OU(A2<10;B2<20);”Preço baixo”;”Preço alto”)

Note que o sinal de igual aparece somente antes da função SE e não acompanha mais as outras funções.

SE aninhado

O SE aninhado é a utilização da função SE dentro da função SE. Podemos utilizar o SE aninhado quando temos dois ou mais testes lógicos distintos para executar. Vamos supor que se o aluno tirou média > do que 7 ele seja aprovado, porém suas faltas também não podem ser maiores do que 6.

Aluno Média Faltas Resultado
João 8 7 Reprovado
Maria 10 0 Aprovada
Pedro 7 6 Aprovado

Para resolver esta situação, nossa função ficaria assim:

No primeiro teste_lógico vamos verificar se o aluno foi aprovado pela média, depois caso aprovado pela média, vamos inserir outra função SE no valor_se_verdadeiro e testar se ele não foi reprovado por faltas, o que ficaria assim:

=SE(B2>=7;SE(C2<=6;”Aprovado”;”Reprovado”);”Reprovado”)

Podemos ainda aninhar outras funções SE sempre no valor_se_verdadeiro de cada uma ou mesmo no valor_se_falso de acordo com a necessidade.

Já o aninhamento de funções não se limita a função SE, podemos inserir outra função no valor_se_verdadeiro como PROCH ou PROCV, entre outras aplicações.

Curso de Excel Online

Essas dicas foram úteis para você? Quer aprender outras funcionalidades do Excel? Continue acompanhando nosso blog para descobrir tudo que você pode fazer com essa ferramenta!

COMPARTILHAR
Artigo anteriorCrie gráficos com mudança de cor em relação à meta
Próximo artigoDicas para fazer uma promoção de sucesso
Rafael Ávila
Administrador e turismólogo, apaixonado pelas possibilidades que o Excel dá para gestores, empreendedores e estudantes. É sócio diretor da área de planilhas na LUZ - Planilhas Empresariais (luz.vc) e é o responsável pelo desenvolvimento das mais de 150 planilhas com foco empresarial e pessoal comercializadas em seu site. Também ministra os cursos online de Excel (cursos.luz.vc) e gosta de ajudar milhares de planilheiros por meio do Fórum e Blog da LUZ.

51 COMENTÁRIOS

    • Oi Diego, tudo bom?

      obrigado pelo elogio. Bom saber que você se interessa por conhecimento do Excel, em breve (ainda esse mês) lançaremos uma plataforma de cursos voltados para Excel. O primeiro curso é o básico e intermediário (imagino que não seja para você), mas se quiser opinar sobre quais seriam os próximos eu gostaria muito de saber o que você pensa, basta me responder aqui

  1. Oi Diego, tudo bom?

    obrigado pelo elogio. Bom saber que você se interessa por conhecimento do Excel, em breve (ainda esse mês) lançaremos uma plataforma de cursos voltados para Excel. O primeiro curso é o básico e intermediário (imagino que não seja para você), mas se quiser opinar sobre quais seriam os próximos eu gostaria muito de saber o que você pensa, basta me responder aqui.

    • Rafael, meu nome é Pedro.
      Preciso fazer um range para calculo de comissões, tenho a seguinte situação: menor de 49999, calcular 5%, maior de 49999 e menor que 64999, 5,5%, de 65000 a 79999, 6% e maior que 79999 calcular 6,5%, já tentei várias formulas, mas não consigo. Desculpe enviar em cima de uma resposta sua, mas estou desesperado.

      • Oi Pedro, nesse caso, você pode criar uma tabela com os valores na primeira coluna, por exemplo, A1 = 0, A2 = 49999, A3 = 65000, etc. Depois, na segunda coluna, você coloca as porcentagens respectivas. Daí é só fazer um PROCV buscando o campo do valor, usando a tabela como matriz, número índice coluna = 2 e VERDADEIRO no final. Bem simples e dá certo. Espero ter ajudado, abraços

    • De nada Jéssica! Obrigado pelas palavras. Fico feliz de termos te ajudado e se tiver qualquer outra dúvida relativa ao Excel é só falar com a gente pelo forum.luz.vc

    • Oi Abraao, tudo bom?

      Você pode resolver diversos tipos de problema no Excel. Desde problemas matemáticos, lógicos, até questões textuais e financeiras.

      O excel possui diversas ferramentas que te ajudam a trabalhar com números, textos, banco de dados. Se você tiver algum problema que quer resolver com o Excel diz para a gente qual é que eu falo se é possível de resolver por lá.

      Abraços

  2. Bom dia Rafael, tudo bem? Muito boa suas dicas.

    Estou com uma duvida em uma planilha e não consegui resolver.

    Preciso que a tabela indique a cada seis meses a troca do filtro. Mas no meu caso esta acontecendo que se eu coloco a data de hoje, ela ja mostra que precisa trocar. Voce poderia por gentileza me dizer como resolver?

    • Oi Diego,

      acho que o erro está no sinal de >=. Acredito que o correto seria =SE(G2<=H2;"Trocar";"")

      Assim você diz para o Excel que se G2 for menor, ou seja, o dia atual for maior, a troca deve acontecer

  3. Boa tarde
    Sou professora e estou fazendo uma planilha de notas. Eu preciso de duas funções diferentes e independentes na mesma fórmula. O valor da coluna em questão é a soma de outras três colunas, só que estes valores totais não podem ultrapassar a nota máxima 10. Então as notas maiores que 10 tem que ser iguais a 10. Me ajuda?
    abraço
    Mari

    • Oi Mari,

      basta usar a função SE normalmente. Supondo que as notas estejam nas células B2, C2, D2 e que a nota final esteja na célula E2. Na célula E2 você colocaria a seguinte função:

      =SE(SOMA(B2:D2>10;10;SOMA(B2:D2)

      Depois é só arrastar para baixo com alça de preenchimento

  4. Boa tarde,

    Relativamente à Função SE:

    Pretendo elaborar uma lista com nomes que cumpram o “teste_lógico”.

    Como nem todos os nomes cumprem o “teste lógico” e o “valor_se_falso” é igual a “”, naturalmente, aparecem espaços em branco na lista.

    Para eliminar esses espaços em branco, que condição devo colocar em “valor_se_falso” quando pretendo que o “teste_lógico” passe para a célula seguinte?

    Obrigada!

    • Oi Silvinha,

      não sei se entendi muito bem, mas acredito que ao invés do “” é só você colocar a referência para a célula com o nome ou que você testa a validação. Assim, sempre que for falso ele vai retornar o mesmo valor e passar para a próxima linha

      • Obrigada pela informação, mas penso que não expliquei bem.

        Exemplo:
        =SE(‘LIST GERAL’!C4:C93=”x”;’LIST GERAL’!B4:B93;””)

        Em que a coluna C representa uma atividade; “x” representa a marcação da atividade; B representa a lista de alunos.

        O que se pretende é: formar uma nova coluna, numa nova folha, com a lista dos alunos que marcaram atividade, ou seja, os que têm”x” na coluna C.

        O problema é que a nova coluna tem um numero limite de linhas. A ideia é a coluna ter apenas os nomes dos que marcaram a atividade e que as linhas em branco (teste_se_falso) deixem de existir.

        A minha ideia é arranjar uma fórmula em que o teste_se_falso remeta para teste lógico do próximo aluno.

        Obrigada

  5. Bom dia Rafael,
    estou com uma dúvida em uma forma do excel, preciso criar um campo no qual eu preciso calcular a nota que o aluno precisa tirar no exame, mas isso é condicionado a média. Se a média for > 7 não precisaria realizar o calculo retornando a palavra aprovado, e esse calculo seria necessário apenas se a nota fosse <7. Como posso fazer isso. Obrigado

  6. Bom dia, Rafael
    estou com uma dúvida, quero usar a formulá de condição com as palavras “Concluído” e “Não concluído”, porém preciso fazer está fórmula ser feita da seguinte maneira: Se a coluna A estiver toda em VERDE (verde é a cor da letra mesmo) significa que está CONCLUÍDA / Se a coluna A estiver VERDE e PRETA significa que está NÃO CONCLUÍDA.
    Como posso fazer está fórmula condicional, sendo que o que tenho para usar são as cores?

    • Oi Caroline,

      Para criar fórmulas você precisa de critérios objetivos e as cores não se enquadram nesses critérios. Por isso, se você puder definir palavras ou valores que possam ser analisados como condições vai facilitar a sua vida para desenvolver essa lógica

  7. Boa tarde, Rafael.

    Preciso estabelecer uma condição SE, em que a formula permita que eu estipule um intervalo para a célula (Ex.: 01 < X < 15 ), em que X seja a célula. Tentei por =SE (0 < A2 <= 180; 22,5%…) mas não da certo. Como posso por esta condição na fórmula SE?

    • Para colocar mais de uma condição dentro do mesmo SE é importante utilizar uma outra fórmula, que é a E. Ficaria algo assim:

      =SE(E(A2>0;A2<=180;0,225;xxxx)

      Observe que eu coloquei 0,225 para a porcentagem pois é assim que se escreve da maneira correta. Se você colocar da maneira que indicou na sua fórmula, provavelmente precisará colocar entre aspas.

    • Oi Osvaldo, basta entrar no nosso site http://cursos.luz.vc/ e adquirir o curso que você se interessar mais. Temos os módulos iniciante + intermediário ou o avançado. Também existe a opção de um pacote com os dois que tem um bom desconto.

      Qualquer dúvida é só me falar

  8. Boa tarde, Gostaria de uma luz e aprender a apurar essas informações de uma base semelhante a essa, através de fórmulas. Em alguns casos utilizo tabela dinâmica, mas agora precisaria utilizar fórmulas. Desde já, muito obrigado.
    1- informar os clientes comprados por zona (clientes diferentes que efetuaram compras, se o cliente comprou mais de 1 vez ou comprou mais de 1 produto, considerar apenas 1 compra) ;
    2- informar através de fórmula lógica os clientes (diferentes) que efetuaram compras por produto. Se o cliente comprou o mesmo produto mais de 1 vez, considerar apenas 1 compra;
    3- informar os 5 maiores clientes que mais tiveram compras no período.

  9. Bom dia, preciso muito da sua ajuda!

    Possuo um documento excel com várias planilhas, e cada planilha corresponde a um cliente, sendo que uma planilha é a lista completa destes clientes, com hiperlink de cada uma das planilhas correspondentes. Nesta lista de clientes, preciso de uma coluna que faça referência à uma célula da planilha do hiperlink correspondente à linha, como se a cada célula dessa coluna entrasse no hiperlink correspondente e ligasse à uma célula padrão daquela planilha. Há condição para esse caso?

    • Oi Felipe, me parece um trabalho bem operacional de se fazer, mas é possível sim. No Excel você consegue fazer o hiperlink ser direcionado para uma célula específica, basta ver as opções dentro do comando de inserir o link

  10. Cara preciso que você me ajude!! . — Gostaria de saber se é possível fazer a seguinte tarefa, como um preenchimento automático, gostaria que quando eu digita-se por exemplo, ficha 10 em uma célula automaticamente apareceria grupo 2 na célula a frente…

    • Você pode criar uma fórmula que automatize isso. Por exemplo: em A1 você colocaria o valor da ficha e em A2 criaria a fórmula =SE(A1=”Ficha 10″;”Grupo 2″;SE(A1=”Ficha 11″;”Grupo 2″;etc…

  11. Prezado Rafael. Você não faz ideia de quanto ajuda as pessoas. Obrigado por mim e por todas elas. A minha dúvida é a seguinte: eu fiz uma planilha onde calculo mensalidades com juros compostos de 1% ao mês. Por exemplo, 1000 a pagar em 50x ao 1% ao mês.Até ai tudo perfeito. Mas a dúvida é… Como criar uma condição mediante a qual só me mostre parcelas possíveis DE NÃO MENOS DE R$ 100. O que for menos nem mostra. Só te dá mínimo tantas de R$ 110 por exemplo. Nunca menos do que 100 a pagar. Muito obrigado. Você é quase minha última esperança ! kkk

  12. Boa noite.

    Amigo obrigado pela suas postagens, tem me ajudado muito.

    Preciso de uma formula que identifique os valores entre um interlavo. ex. 10 e 20, 10 incial e 20 final, e me apresentar os valores 10,11,12,13,14,15,16,17,18,19 e 20.

  13. uma duvida

    Em uma tabela de apostas de poker
    onde por exemplo um jogador da um “all in” no valor de 3 reais
    temos mais 5 jogadores com os seguintes valores de “all in”
    3
    2,5
    0,5
    1
    3
    tratando-se de poker, cada jogador participara do “pote” de acordo com sua aposta maxima, assim, poe exemplo, o jogador que apostou 0,5 tera no seu pote o valor total de 3 reais, o jogador que apostou 2,5 tera no seu pote o valor de 11,50

    tem como criar uma formula para calcular isso automaticamente, tipo soma das celulas A1:A7 se o valor for igual ou menor, e se valor for maior somr apenas o correspondente da celula A4, por exemplo.
    Uma formula que calcule o valor do pote de cada jogador

    • Oi Alberto, é possível sim, basta criar colunas auxiliares para chegar nesses valores. Por exemplo, para o jogador que tem 0,5, você teria que fazer um cálculo com a fórmula SE para entender SE o valor é maior do que o valor que ele tem, só somar o que ele tem, se for menor ou igual, somar tudo e depois fazer uma soma de todos esses valores

  14. Boa tarde Rafael,

    Estou querendo implantar uma condição de alerta no qual quando eu selecione o tipo de órgão responsável “Estado ou Federal” onde para ambos o prazo é de até 96 meses com base na coluna meses restantes, a coluna de alerta me traga uma mensagem (Falta tanto tempo para o contrato se vencer) com base no prazo inserido de “inicio da vigência e vencimento do contrato”, e se tiver como inserir outra condição com base no prazo de 96 meses gere um alerta a cada ano transcorrido, como por exemplo, passou 12 meses > gera o alerta com mensagem (Passou 12 meses do contrato), passou 24 meses, gera o alerta (Passou 24 meses do contrato) e assim sucessivamente até fechar os 96 meses…já tentei aqui mas não estou conseguindo. Fico agradecido se puder ajudar. Obrigado!

  15. Olá Rafael, boa tarde!

    Poderia me orientar detalhando esta formula abaixo baseando nos dados da tabela mais abaixo, sei que o resultado é 5, mas não entendi pq o resultado é falso, na verdade o que me confundiu foi o sinal do diferente():

    Questão: =SE(CONTAR.SE(A1:C4;”>5″)MAIOR(A1:C4;6) ; MENOR(A2:B3;2) ; MAIOR(A1:B4;3))

    A B C
    1 2 3 4
    2 1 2 8
    3 5 5 6
    4 10 11 12

    Desde já, muito grato e parabéns pela excelente conteúdo do blog!!

    • Oi Vinícius, a melhor forma de aprender a ler fórmulas é ver o funcionamento delas na guia FÓRMULAS, grupo AUDITORIA, botão AVALIAR FÓRMULA

  16. Olá, estou precisando de uma ajuda.
    Estou tentando criar um planilha em que dependendo da idade, irá me informar um valor de acordo com o parâmetro daquela idade. Na célula B1 eu coloco a idade e de acordo com o resultado da celular H6, irá informar o resultado. Exemplo:

    =SE(B1<=29;SE(H6<0,83;"BAIXO";SE(H6<0,88;"MODERADO";SE(H6<0,94;"ALTO";"MUITO ALTO"))))
    =SE(B1<=39;SE(H6<0,84;"BAIXO";SE(H6<0,91;"MODERADO";SE(H6<0,96;"ALTO";"MUITO ALTO"))))
    =SE(B1<=49;SE(H6<0,88;"BAIXO";SE(H6<0,95;"MODERADO";SE(H6<1;"ALTO";"MUITO ALTO"))))
    =SE(B1<=59;SE(H6<0,9;"BAIXO";SE(H6<0,96;"MODERADO";SE(H6<1,02;"ALTO";"MUITO ALTO"))))
    =SE(B1<=69;SE(H6<0,91;"BAIXO";SE(H6<0,96;"MODERADO";SE(H6<1,03;"ALTO";"MUITO ALTO"))))

    Eu consegui fazer, mas em fórmulas separadas, eu gostaria de juntar todas essas. Ai quando eu colocar a idade da pessoa, automaticamente calcular o resultado.

    • Acredito (não tenho certeza), que você pode criar uma tabela com as idades e as fórmulas em uma segunda coluna. Depois é só usar um PROCV com INDIRETO para, de acordo com a idade, calcular uma das fórmulas

  17. Olá, estou precisando de uma ajuda. eu tenho uma tabela 1 de equivalência na celula a1 ate a5 esses são os valores R$ 1.099,00 R$ 2.099,00 R$ 2.599,00
    R$ 3.099,00 ai na celula b1 ate a b5 90 120 150 180 200 conforme a cada um dos valores da celula a1 ate a a5, então eu tenho uma planilha 1 que somando valores vão para a planilha 2 esse valores somados sera de acordo com o somatório da planilha 1, que se esses valore somados vai dar um valor que seja menor ou igual ao valor da tabela 1 de a1 ate a5 e conforme o valor visualizado da soma, esse valor mostrar o valor conforme a tabela 1 b1 ate b5, entao esse e o meu problema alguém que possa me ajudar, att LUIS

  18. Bom dia,

    Gostaria de uma ajuda sua, eu tenho uma planilha de vendas de produtos bancarios, onde cada produto tem uma pontuação, com isso eu gostaria de atribuir o valor total de pontos adquiridos por um vendedor sobre cada produto que o mesmo vendeu, EX: coluna C será a coluna dos produtos e a coluna D será a dos vendedores. EXEMPLO abaixo: dos produtos informados abaixo sabemos que Aplicação =1, Seguro =3, Poupança =1, Previdencia = 2
    C D
    (Produto) (VENDEDOR)
    APLICAÇÃO ALEX
    SEGURO JOÃO
    POUPANÇA ALEX
    PREVIDENCIA MARCELO

    Neste caso o resultado seria, ALEX COM 2 PONTOS, JOÃO COM 3 PONTOS E MARCELO COM 2 PONTOS.
    Gostaria de saber como fazer essa planilha onde ele procura na Coluna C o tipo de produto e depois procura na planilha D qual vendedor e joga o total de pontos de cada vendedor no final da planilha.

    Desde já agradeço

    • Oi Alexandro, eu criaria uma coluna auxiliar para mostrar a pontuação do produto vendido (você pode usar SE dentro de SE para isso ou PROCV). Depois, basta criar uma lista com o nome dos vendedores e usar uma CONT.SE para contar a coluna auxiliar com os valores, sempre que a coluna do vendedor for do vendedor em questão nessa tabela auxiliar

DEIXE UMA RESPOSTA

Por favor, escreva o seu comentário
Por favor, digite seu nome