Continuo recebendo um erro #VALUE com minha instrução IF no Excel. Alguma idéia do porquê? Qualquer ajuda é muito apreciada!
=IF(
OR(
R2 > 3
),
0,
( IF(
R2 = 1,
( IF(
K2 <- 0.1,
1,
IF(
AND(
K2 >- 0.1,
K2 <- 0.05
),
2,
IF(
AND(
K2 >=- 0.5,
K2 < 0
),
3,
IF(
AND(
K2 >= 0,
K2 <= 0.05
),
4,
IF(
AND(
K2 > 0.05,
K2 <= 0.15
),
5,
IF(
AND(
K2 > 0.15,
K2 <= 0.3
),
6,
7
)
)
)
)
)
) ,
IF(
R2 = 2,
( IF(
K2 <- 0.1,
8,
IF(
AND(
K2 >- 0.1,
K2 <- 0.05
),
9,
IF(
AND(
K2 >=- 0.5,
K2 < 0
),
10,
IF(
AND(
K2 >= 0,
K2 <= 0.05
),
11,
IF(
AND(
K2 > 0.05,
K2 <= 0.15
),
12,
IF(
AND(
K2 > 0.15,
K2 <= 0.3
),
13,
14
)
)
)
)
)
) ,
IF(
R2 = 3,
( IF(
K2 <- 0.1,
15,
IF(
AND(
K2 >- 0.1,
K2 <- 0.05
),
16,
IF(
AND(
K2 >=- 0.5,
K2 < 0
),
17,
IF(
AND(
K2 >= 0,
K2 <= 0.05
),
18,
IF(
AND(
K2 > 0.05,
K2 <= 0.15
),
19,
IF(
AND(
K2 > 0.15,
K2 <= 0.3
),
20,
21
)
)
)
)
)
) )
) )
) )
) )
)
Responder1
Sua fórmula é extremamente longa, é muito difícil administrar fórmulas tão complexas. O que eu acho é que o colchete depois R2=1
é fechado apenas no final de toda a fórmula (veja a nota abaixo), causando gerenciamento incorreto de toda a IF
estrutura aninhada.
Eu proporia usar esta fórmula, fazendo a mesma coisa com uma complexidade razoável:
=IF(R2>3,0,IFERROR(MATCH(K2,{-0.1,-0.05,0,0.05,0.15,0.3},1)+1,1)+(R2-1)*7)
Fórmula original:
=IF(
OR(R2>3),
0,
(IF(
R2=1,( ## this bracket is closed only at the end of the formula ##
IF(
K2<-0.1,
1,
IF(
AND(K2>-0.1,K2<-0.05),
2,
IF(
AND(K2>=-0.5,K2<0),
3,
IF(
AND(K2>=0,K2<=0.05),
4,
IF(
AND(K2>0.05,K2<=0.15),
5,
IF(
AND(K2>0.15,K2<=0.3),
6,
7
)
)
)
)
)
),
IF(
R2=2,(
IF(
K2<-0.1,
8,
IF(
AND(K2>-0.1,K2<-0.05),
9,
IF(
AND(K2>=-0.5,K2<0),
10,
IF(
AND(K2>=0,K2<=0.05),
11,
IF(
AND(K2>0.05,K2<=0.15),
12,
IF(
AND(K2>0.15,K2<=0.3),
13,
14
)
)
)
)
),
IF(
R2=3,(
IF(
K2<-0.1,
15,
IF(
AND(K2>-0.1,K2<-0.05),
16,
IF(
AND(K2>=-0.5,K2<0),
17,
IF(
AND(K2>=0,K2<=0.05),
18,
IF(
AND(K2>0.05,K2<=0.15),
19,
IF(
AND(K2>0.15,K2<=0.3),
20,
21
)
)
)
)
)
)
)
)
)
)
)
)
)
)