Función para evaluar rangos y devolver un valor

En excel quiero una función que evalúe rangos y entregue un valor que son los siguientes

0 a 0.09 valor asignado 0.0

0.1 a 0.29 valor asignado 0.2

3 a 0.49 valor asignado 0.4

5 a 0.69 valor asignado 0.6

7 a 0.89 valor asignado 0.8

9 a 0.9 valor asignado 1

La función que implemente es la siguiente:

=SI(Y(N27>=0,N27<=0.09),0,SI(Y(N27>=0.1,N27<=0.29),0.2,SI(Y(N27>=0.3,N27<=0.49),0.4,SI(Y(N27>=0.5,N27<=0.69),0.6,SI(Y(N27>=0.7,N27<=0.89),0.8,SI(Y(N27>=0.9,N27<=0.99),1))))))

Pero al tomar los valores de 0.7 y 0.9 me devuelve un Falso

1 respuesta

Respuesta
2

Salvo en el primer grupo no es necesario usar la función Y. Además de esta forma no dejarás huecos porque tal como lo tienes no has asignado a los números 0.295, 0.495, etc

=SI(Y(N27>=0,N27<0.1),0,SI(N27<0.3),0.2,SI(N27<0.5),0.4,SI(N27<0.7),0.6,SI(N27<=0.9),0.8,SI(N27<1),1))))))

Prueba a ver si te funciona bien así.

Muchas gracias Dante,

Utilice la fórmula y me manda un erro marcando "0.3"

=SI(Y(N27>=0,N27<0.1),0,SI(N27<0.3),0.2,SI(N27<0.5),0.4,SI(N27<0.7),0.6,SI(N27<=0.9),0.8,SI(N27<1),1))))))

Además te comento que solo contemplo decimales con dos cifras significativas

Decidí emplear una solución menos sutil, atreves de búsqueda en una lista con la función "=BUSCAR(N27, O42:P141)" la tabla la construí como se ilustra a continuación

"O" - "P"

0.00 -  0.0
0.01 -  0.0
0.02 - 0.0
0.03 - 0.0
0.04 - 0.0
0.05 - 0.0
0.06  -0.0
0.07 - 0.0
0.08 - 0.0
0.09 - 0.0
0.10 - 0.2
0.11 - 0.2

El problema esta que cuando N27=0.1 me devuelve el valor asociado a 0.09, lo mismo sucede con el valor de N27=0.7 me devuelve el valor asociado a 0.69, ya verifique los de más valores y devuelve el valor que esta ligado en la lista, ¿me podrías indicar que es lo que estoy haciendo mal?

Gracias

Hola Dante

Realice otras pruebas trasladando mi lista y la fórmula de búsqueda a otro libro de Excel y funciona bien, me percate que el erro proviene de tomar el dato de N27 que es el resultado de una operación, si lo obtengo de una celda en la cual lo ingreso directo esto no sucede y todo funciona bien, no se deba esto; ya verifique los formatos de las celdas y coinciden; no se si pudiera enviarte el libro de excel para que lo verifiques más a conciencia

Gracias

Se me olvidó quitar los paréntesis de cierre de la función Y. Prueba con esto:

=SI(Y(N27>=0,N27<0.1),0,SI(N27<0.3,0.2,SI(N27<0.5,0.4,SI(N27<0.7,0.6,SI(N27<=0.9,0.8,SI(N27<1,1,""))))))

·

No lo había probado porque para que funcione aquí en España hay que cambiar las comas por puntos y comas y los puntos por comas, pero ya hice los cambios y funciona.

Por cierto, yo no soy Dante.

Hola Angel, una disculpa por la confusión, la función sirve realmente; detecte cual es el problema, espero me puedas orientar.

El valor que toma N27 viene de una operación la suma de dos valores promediados, por lo que he podido revisar el problema se presenta con los siguientes datos

“Celda E15=”15.1

para obtener la fracción lo que hago es obtener el entero mediante la función  

=ENTERO(E15)

Resto este resultado a la celda E15

Y obtengo en la “Celda N27=”0.1

Pero el valor que realmente toma es 0.09

Lo verifique con la función truncar que meda como resultado 0.09

Si asigno el valor de 0.1 en forma directa la formula funciona de maravilla; pero si el dato proviene de una operación lo maneja como 0.09

Muchas gracias por el tiempo invertido

Yo pondría más decimales en la celda E15, así sabrás el valor exacto que tiene, luego me los dices.

Para tratar de ser más claro con lo que pasa te anexo una imagen de la hoja de excel

Agradezco tu ayuda Ángel

Es un problema de los cálculos de los ordenadores porque hay números que en decimal tienen una representación exacta pero en binario tienen infinitos decimales.

En la celda C10 en vez de poner

=C7-C9

Pon

= REDONDEAR(C7-C9,9)

Esto te redondeará en el 10 decimal creo no afectará mucho a los cálculos que debas hacer con ese valor y soluciona el problema que tenemos. Aplica esto a la celda N27.

Gracias Angel,

Aplique lo que me recomiendas y el resultado sigue siendo el mismo en vez de 0.1 meda 0.09; alguna otra sugerencia

Saludos!

A mi no me lo mismo, me da 0.1

¿Seguro qué lo has hecho bien?

La operación que tengas en la celda N27 tienes que redondearla de esa forma. Dime cuál es y te ayudo y podré probarla

Esto es lo que sale en mi Excel.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas