Error en Excel....

01/12/2005 - 22:26 por gyrsoft | Informe spam
Hola a todos, escribo lo siguiente porque descubri un error en Excel al
estar haciendo unas formulas para convertir de numero a letras. No es que
salga un error pero no calcula bien cuando trabajo con decimales. Hice lo
siguiente: Hice una serie de 1 decimal hasta el 100.00 y en los primeros
10 decimales estaba bien pero al aumentar al digito cada numero entero mas
1 decimal (hasta el decimo) se empieza a notar ligeramente un desfase en
el 1.01-1.1 y es mas evidente despues de los numeros del 2.01 en adelante
(pero solo cuando son los primeros 10 decimales). Si en el formato de la
celda le agregamos 16 digitos en los decimales, podremos observar el
error). Me di cuenta pues yo use la formula =largo(celdax) para poder
sacar los decimales y saber cuando eran décimas o centesimas y cual fue mu
sorpresa que en las cantidades descritas me aparecian como resultado 18
(lo cual indicaba un largo muy extrano, porque deberian ser 2). Se los
envio para ver si existe un parche que corrija dicho error. Saludos...
Para mas información, escribanme a mi correo para enviarles el archivo
donde tengo documentado el error.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
02/12/2005 - 06:25 | Informe spam
hola, Roberto !

... descubri un error en Excel al estar haciendo unas formulas para convertir de numero a letras
... no calcula bien cuando trabajo con decimales [...]



=> esos 'problemas' de precision son en realidad originados por lo siguiente:
1.- Excel, al igual que [casi?] todos los programas de 'precision', así como los CPU, etc., etc., etc.
utilizan el 'punto flotante de precision doble' [Double], siguiendo los estandares de la organizacion:
IEEE [Institute of Electrical and Electronic Engineers].
2.- Los numeros son 'guardados' de manera diferente de como 'se ven' [segun el formato en la hoja]
en variables de 8 bits, que guarda numeros con una precision aproximada de 15 posiciones decimales
3.- Ademas, un procesador NO 'puede' guardar numeros fraccionarios mas grandes con absoluta precision.

=> [creo que te 'conviene', primero...] revisar informacion adicional en:

XL Como Corregir Errores al Redondear en Aritmetica de Punto Flotante
http://support.microsoft.com/defaul...s%3b214118
XL2002 Los Valores Guardados en Hojas de Cálculo XML, no Coinciden con los Valores que Aparecen en Excel
http://support.microsoft.com/defaul...s%3b328996
XL Aritmetica de Punto Flotante Puede Proporcionar Resultados Inexactos
http://support.microsoft.com/defaul...b;ES;78113
IEEE Standard 754 Floating Point Numbers
http://www.research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html?&gssnb=1
La pagina del IEEE (Institute of Electric and Electronic Engineers)
http://www.ieee.org/

saludos,
hector.
Respuesta Responder a este mensaje
#2 Gabriel Raigosa
04/12/2005 - 23:45 | Informe spam
Saludos:

Hice la siguiente prueba (Excel 2003), en la celda A1 empiezo con 0.01

Columna A Columna B
0.01 =LARGO(A1)
=+A1+0.01 =LARGO(A2)
=+A2+0.01 =LARGO(A3)
=+A3+0.01 =LARGO(A4)
=+A4+0.01 =LARGO(A5)
=+A5+0.01 =LARGO(A6)
=+A6+0.01 =LARGO(A7)
=+A7+0.01 =LARGO(A8)


Al llegar a la fila 82 el largo me da 17
Al llegar a la fila 230 el largo me da 16
y mas adelante cambia entre 15 y 16 el resultado que esta dando la función

Si que esta raro.

Gabriel
Respuesta Responder a este mensaje
#3 Héctor Miguel
05/12/2005 - 06:31 | Informe spam
hola, Gabriel !

... la siguiente prueba (Excel 2003), en... A1 empiezo con 0.01
Columna A Columna B
0.01 =LARGO(A1)
=+A1+0.01 =LARGO(A2)
=+A2+0.01 =LARGO(A3) [...]
Al llegar a la fila 82 el largo me da 17
Al llegar a la fila 230 el largo me da 16
y mas adelante cambia entre 15 y 16 el resultado que esta dando la funcion
Si que esta raro.



1) posicionate en 'A80' [y despues en 'A230', etc,] y pulsa {F2}+{F9}
-> que ves ?

2) 'repite' el procedimiento que describes... -> desde el inicio <- PERO ...
ANTES de empezar a 'arrastrar' las formulas... ve a:
[menu] herramientas / opciones / [ficha] calcular / [seccion] opciones del libro y...
-> pon una marca en la opcion de: 'precision de pantalla' ;)
[ahora si]... 'arrastra' las formulas hasta donde quieras :))
-> que paso ?

3) visita las paginas sugeridas con relacion a los calculos con 'punto flotante' [NO 'decimales fijas'] ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Gabriel Raigosa
05/12/2005 - 16:16 | Informe spam
Saludos:
F2 + F9, convierte las formulas en valores, 0.000000001, le de un montón de
decimales

La precisión en pantalla, aparentemente arregla el problema, trabaja con
menos precisión, la de la pantalla.

¿Que será lo mas conveniente?

Hombre yo si creo es un error del EXCEL.

Como se le pasa el dato a MS, seguro que les debe interesar

Gabriel Raigosa
Respuesta Responder a este mensaje
#5 Héctor Miguel
05/12/2005 - 22:02 | Informe spam
hola, Gabriel !

F2 + F9, convierte las formulas en valores, 0.000000001, le de un monton de decimales
La precision en pantalla, aparentemente arregla el problema, trabaja con menos precision...
Que sera lo mas conveniente?
Hombre yo si creo es un error del EXCEL.
Como se le pasa el dato a MS, seguro que les debe interesar



si tienes un poquitin de tiempo para invertirlo en revisar los siguientes sitios...
[probablemente] podras ampliarte el panorama con relacion a trabajar con el punto flotante de precision doble :))
en caso contrario trato de hacer un breve 'resumen' de las implicaciones que lleva 'el punto' en cuestion ;)
[ademas de que MS no permanece 'al margen' de las mismas, ya que algunas paginas son precisamente de MS] ;)

saludos,
hector.
==> esos 'problemas' de precision son en realidad originados por lo siguiente:
1.- Excel, al igual que [casi?] todos los programas de 'precision', asi como los CPU, etc., etc., etc.
utilizan el 'punto flotante de precision doble' [Double], siguiendo los estandares de la organizacion:
IEEE [Institute of Electrical and Electronic Engineers].
2.- Los numeros son 'guardados' de manera diferente de como 'se ven' [segun el formato en la hoja]
en variables de 8 bits, que guarda numeros con una precision aproximada de 15 posiciones decimales
3.- Ademas, un procesador NO 'puede' guardar numeros fraccionarios mas grandes con absoluta precision.

=> [creo que te 'conviene', primero...] revisar informacion adicional en:

XL Como Corregir Errores al Redondear en Aritmetica de Punto Flotante
http://support.microsoft.com/defaul...s%3b214118
XL2002 Los Valores Guardados en Hojas de Cálculo XML, no Coinciden con los Valores que Aparecen en Excel
http://support.microsoft.com/defaul...s%3b328996
XL Aritmetica de Punto Flotante Puede Proporcionar Resultados Inexactos
http://support.microsoft.com/defaul...b;ES;78113
IEEE Standard 754 Floating Point Numbers
http://www.research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html?&gssnb=1
La pagina del IEEE (Institute of Electric and Electronic Engineers)
http://www.ieee.org/
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida