Redondear

26/02/2010 - 11:49 por Ruben Islas | Informe spam
Hola. Una consulta

Tengo este ejemplo.

A1=2,55
Esta formula =REDONDEAR(A1;1)-A1 da como respuesta 0,05

pero esto =SI((REDONDEAR(A1;1)-A1)=0,05;"Son Iguales";"No son Iguales") da
que no son iguales.

No entiendo el porque?

Saludos Ruben

Preguntas similare

Leer las respuestas

#1 Juan M
26/02/2010 - 12:57 | Informe spam
"Ruben Islas" escribió
Hola. Una consulta

Tengo este ejemplo.

A1=2,55
Esta formula =REDONDEAR(A1;1)-A1 da como respuesta 0,05

pero esto =SI((REDONDEAR(A1;1)-A1)=0,05;"Son Iguales";"No son Iguales") da
que no son iguales.

No entiendo el porque?

Saludos Ruben





Hola Ruben,

En tanto llega alguien con mas informacion.

Creo que ese comportamiento es debido a un error de precisión en los digitos
considerados por excel.
La operación
REDONDEAR(A1;1) da como resultado 2.6

la operacion REDONDEAR(A1;1)-A1 visualmente da 0.05
pero internamente da 0,0500000000000003. (cosas de la matemática de coma
flotante)

Este valor lo puedes comprobar si en la barra de fórmulas seleccionas la
operacion y pulsas F9, o si tienes la versión 2003 desde el menu
herramientas>Auditoria de formulas con la herramienta Analisis de formulas.

Considerando que la precisión es de 15 decimales, el valor 3 es inventado
en notacion exponencial resultaría 5.00000000000003e-2 de ahí que no de el
valor esperado.

Unas lecturas al respecto
http://support.microsoft.com/kb/78113
http://www.cpearson.com/Excel/Rounding.htm
http://support.microsoft.com/kb/214118

Un saludo,
Juan
Respuesta Responder a este mensaje
#2 Xavier Budet Graco
26/02/2010 - 13:09 | Informe spam
Hola Ruben, el tema de las comparaciones con decimales, a veces, son imprecisas en Excel.

Prueba cambiando tu fórmula a:
=SI(TRUNCAR((REDONDEAR(A1;1)-A1);2)=0,05;"Son Iguales";"No son Iguales")

si ya sé que es un "rollo" pero el sistema de redondeo es lo que es.

Saludos,

Xavier

Quitar MAC para contestar. Gracias.

"Ruben Islas" escribió en el mensaje news:
Hola. Una consulta

Tengo este ejemplo.

A1=2,55
Esta formula =REDONDEAR(A1;1)-A1 da como respuesta 0,05

pero esto =SI((REDONDEAR(A1;1)-A1)=0,05;"Son Iguales";"No son Iguales") da
que no son iguales.

No entiendo el porque?

Saludos Ruben


Respuesta Responder a este mensaje
#3 Ruben Islas
26/02/2010 - 15:37 | Informe spam
¡¡¡Perfecto!!!

Muchas gracias. Ruben

"Xavier Budet Graco" escribió en el mensaje
news:
Hola Ruben, el tema de las comparaciones con decimales, a veces, son
imprecisas en Excel.

Prueba cambiando tu fórmula a:
=SI(TRUNCAR((REDONDEAR(A1;1)-A1);2)=0,05;"Son Iguales";"No son Iguales")

si ya sé que es un "rollo" pero el sistema de redondeo es lo que es.

Saludos,

Xavier

Quitar MAC para contestar. Gracias.

"Ruben Islas" escribió en el mensaje
news:
Hola. Una consulta

Tengo este ejemplo.

A1=2,55
Esta formula =REDONDEAR(A1;1)-A1 da como respuesta 0,05

pero esto =SI((REDONDEAR(A1;1)-A1)=0,05;"Son Iguales";"No son Iguales") da
que no son iguales.

No entiendo el porque?

Saludos Ruben


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida