Compartilhar via

Função Composta de SE no Excel

Anônima
2017-10-03T22:19:24+00:00

Boa noite,

estou tentando criar uma função "SE" um tanto grande e não estou tendo ideias de como diminuí-la para ser aceita pelo Excel... o que fiz foi a metade do que preciso, mas nem isso coube como formula.

O que estou tentando criar são 8 possíveis cenários:

Compra+Indicie+Gain

Compra+Indicie+Loss

Venda+Indicie+Gain

Venda+Indicie+Loss

Compra+Dólar+Gain

Compra+Dólar+Loss

Venda+Dólar+Gain

Venda+Dólar+Loss

esta é a diferença entre Dólar e Indicie:

Dólar uso a fórmula X * Quantidade * 10

Indicie uso a fórmula X * Quantidade / 5

Cheguei na seguinte fórmula:

=SE(E(A2="Compra";B2="Indicie";E2="Gain");(D2-C2)*F2/5;SE(E(A2="Compra";B2="Indicie";E2="Loss");(C2-D2)*F2/5);SE(E(A2="Venda";B2="Indicie";E2="Gain");(C2-D2)*F2/5);SE(E(A2="Venda";B2="Indicie";E2="Loss");(D2-C2)*F2/5))

Porém, está dando este erro... e ali tem somente as possibilidades do "Indicie", e precisaria ainda adicionar as 4 alternativas do "Dólar"...

Alguém teria alguma ideia?

Agradeço desde já!!

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

  1. Anônima
    2017-10-10T11:56:23+00:00

    Rolyek, muito feliz em ver que você pegou o conceito e já ajustou da forma que precisa!

    Essa dúvida do FALSO é simples de ser resolvida.

    Lembre-se que a função =SE pede:

    • Teste lógico (isso você já sabe e está fazendo bem... A2="CDL", por exemplo)
    • Valor se verdadeiro (está ok também... é o cálculo (D2*E2)*10, por exemplo)
    • Valor se falso (aqui está o ponto)

    Nos primeiros =SE, você inseriu um novo =SE na parte do "falso". 

    Porém, no último =SE, esqueceu de informar ao Excel o que ele deve exibir caso todas as condições sejam falsas. 

    Está assim:

    =SE(OU(A2="CDG";A2="CDL";A2="VDG";A2="VDL");(D2*E2)*10;SE(OU(A2="CIG";A2="CIL";A2="VIG";A2="VIL");(D2*E2)*0,2))

    Deve ficar:

    =SE(OU(A2="CDG";A2="CDL";A2="VDG";A2="VDL");(D2*E2)*10;SE(OU(A2="CIG";A2="CIL";A2="VIG";A2="VIL");(D2*E2)*0,2; "-"))

    Abraço.

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

  1. Anônima
    2017-10-07T12:36:46+00:00

    Olá, Rolyek!

    É preciso verificar a sua versão do Excel. As mais antigas têm o limite de 7 =SE aninhados. As mais novas, se não me engano (é que nunca precisei de muitas), permitem 64.

    Vou dar algumas sugestões:

    1. Transforme a informação em siglas.
    • Compra, Índice, Gain = CIG
    • Compra, Índice, Loss = CIL
    • Compra, Dólar, Gain = CDG
    • Assim por diante!

    Assim você evita o uso do "=SE(E(A2="Compra";B2="Indicie";E2="Gain")..." que foi muito bem feito, mas fica muito extenso!

    A nova versão seria: "=SE(A2="CIG"...". O que acha?

    Pelo que vi, você tem fórmulas iguais para condições diferentes. Então consegue agrupar essas condições usando a fórmula =OU:

    Assim você diminui a quantidade de =SE e pode conseguir ficar abaixo do limite da sua versão.

    Extra:

    Também percebi na sua imagem que em alguns momentos usou "/5" e em outros "*10".

    Se for isso mesmo, é bom criar uma nova coluna para colocar os valores "5" e "10".

    Aí chegamos a outro problema. Como estamos unificando as fórmulas, não podemos às vezes dividir e às vezes multiplicar.

    Mas podemos contornar isso transformando tudo em multiplicação. O "dividido por 5" pode muito bem ser alterado para "multiplicado por 0,2", por exemplo.

    Espero que seja isso o que precisa.

    Bons estudos.

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

  1. Anônima
    2017-10-06T21:14:18+00:00

    Descobri qual é o erro da sua fórmula, você fechou um parêntese a mais depois nas expressões *F2/5)

    Você pode facilitar um pouco sua vida ao escrever fórmulas longas. Veja o que fiz:

    Aumentei o tamanho da barra de fórmulas com o mouse (clicando e arrastando) e quebrei linhas da fórmula. Se você quebrar linhas, ela continua funcionando do mesmo jeito, sem problemas. Para quebrar linhas, durante a edição da fórmula, pressione Alt+Enter.

    Essa fórmula acima, se quiser copiar para seu caso, é:

    =SE(E(A2="Compra";B2="Indicie";E2="Gain");(D2-C2)*F2/5;

    SE(E(A2="Compra";B2="Indicie";E2="Loss");(C2-D2)*F2/5;

    SE(E(A2="Venda";B2="Indicie";E2="Gain");(C2-D2)*F2/5;

    SE(E(A2="Venda";B2="Indicie";E2="Loss");(D2-C2)*F2/5;

    SE(E(A2="Compra";B2="Dólar";E2="Gain");(D2-C2)*F2/5;

    SE(E(A2="Compra";B2="Dólar";E2="Loss");(C2-D2)*F2/5;

    SE(E(A2="Venda";B2="Dólar";E2="Gain");(C2-D2)*F2/5;

    SE(E(A2="Venda";B2="Dólar";E2="Loss");(D2-C2)*F2/5;

    "Nenhum Caso"))))))))

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários

2 respostas adicionais

Classificar por: Mais útil
  1. Anônima
    2017-10-10T21:11:32+00:00

    Boa tarde,

    agradeço novamente a atenção.

    Ontem eu tentei fazer exatamente assim e não consegui rs mas hoje seguindo seu exemplo deu certo rs

    Muito obrigado!! acredito que tenha conseguido alcançar o que preciso por enquanto!! :D

    Agradecido!!

    Esta resposta foi útil?

    0 comentários Sem comentários
  2. Anônima
    2017-10-09T15:33:08+00:00

    Boa tarde Bruno!!

    Peguei pelos exemplos e ideias que vc passou e consegui criar a tabela! rs

    Fiz um pouco diferente, mas deu certo!!

    Olha como ficou:

    Esta é a parte de calcular os Pontos conforme o tipo de operação.

    =SE(OU(A2="CIG";A2="CDG");C2-B2;SE(OU(A2="CIL";A2="CDL");C2-B2;SE(OU(A2="VIG";A2="VDG");B2-C2;SE(OU(A2="VIL";A2="VDL");B2-C2;"FALSO"))))

    Esta é a parte de calcular o ganho/perda que também coloquei condições com cores, pela Formatação Condicional.

    =SE(OU(A2="CDG";A2="CDL";A2="VDG";A2="VDL");(D2*E2)*10;SE(OU(A2="CIG";A2="CIL";A2="VIG";A2="VIL");(D2*E2)*0,2))

    A tabela de operações eu coloquei na Planilha 2, pra deixar mais limpa esta primeira planilha... 

    O que não consegui alterar foi a palavra "FALSO", gostaria que aparecesse " - " ao invés de "FALSO" ou algum outro símbolo poderia ser também...

    Agradeço a atenção !! Ajudou bastante!! xD

    Esta resposta foi útil?

    0 comentários Sem comentários