Sigo recibiendo un error #VALOR con mi declaración IF en Excel. ¿Alguna idea de por qué? ¡Cualquier ayuda es muy 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
)
)
)
)
)
) )
) )
) )
) )
)
Respuesta1
Su fórmula es extremadamente larga, es muy difícil manejar fórmulas tan complejas. Lo que supongo es que el corchete posterior R2=1
se cierra solo al final de toda la fórmula (ver nota a continuación), lo que provoca una gestión incorrecta de toda la IF
estructura anidada.
Propondría usar esta fórmula, haciendo lo mismo con una complejidad razonable:
=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
)
)
)
)
)
)
)
)
)
)
)
)
)
)