Como você obtém várias instruções if trabalhando dentro da mesma célula de cálculo do open office?

0

Estou tentando classificar uma coluna em um escritório aberto e preciso que os valores da célula permaneçam entre 10 e 0. Atualmente, tenho uma declaração If da seguinte forma: If(X6>0;(((S7/V7)-($B$6))/$B$4)+$X$5;0)
Eu preciso também incluir uma instrução IF na mesma célula da seguinte forma: IF(X6>10;$D$26=0;(((S7/V7)-($B$6))/$B$4)+$X$5)

Como posso obter essas duas instruções IF para trabalhar na mesma célula?

    
por user2041029 31.12.2016 / 16:34

2 respostas

2

As partes "then" e "else" em if(condition; then; else) também podem ser uma instrução IF:

if(condition1; then1; else if(condition2; then2; else2))
if(x6<=0; 0; if(x6>10; $D$26=0; (((S7/V7)-($B$6))/$B$4)+$X$5))

Ou:

if(condition1; then if(condition2; then2; else2); else1)
if(x6>0; if(x6>10; $D$26=0; (((S7/V7)-($B$6))/$B$4)+$X$5); 0)
    
por 31.12.2016 / 16:40
1

Aqui estão as duas expressões IF em sua pergunta:

If(X6>0; (((S7/V7)-($B$6))/$B$4)+$X$5; 0) (com espaços adicionados para maior clareza) e IF(X6>10; $D$26=0; (((S7/V7)-($B$6))/$B$4)+$X$5)

Eu os apresento assim porque não é óbvio pela pergunta que o

                   (((S7/V7)-($B$6))/$B$4)+$X$5

A subexpressão é a mesma em ambos. A resposta de Arjan está correta, mas depende do fato de que suas duas expressões IF têm uma subexpressão comum.

Também gostaria de saber o que você pretende que a subexpressão $D$26=0 faça. Se é um erro de digitação, e você quer dizer

IF(X6>10;     0  ; (((S7/V7)-($B$6))/$B$4)+$X$5)

então há outra resposta que (IMHO) é mais clara:

IF(AND(X6>0;X6<=10); (((S7/V7)-($B$6))/$B$4)+$X$5; 0)

Observe que seu texto diz "entre 10 e 0" mas você está tratando 0 e 10 de maneira diferente.

por 31.12.2016 / 20:42