Jump to content
Kalambata

[Resolvido] Resultado 0 ?

Recommended Posts

Kalambata

Tenho aqui um problema que nunca me tinha surgido.

É o seguinte:

valor da Célula A1 ( Resulta do somatório de várias células) --> 1.684,190000000000000

valor da Célula A2 ( idem ) --> 1.684,190000000000000

valor da Célula A3 ( =A2-A1 ) --> -0,000000000001819

valor da Célula A4 ( =A1-A2 ) --> 0,000000000001819

Se nas células A1 e A2 eu introduzir manualmente os valores o resultado é, como pretendo, 0,000000000000000

Verifiquei, com 15 casas decimais, todos os valores que influenciam o resultado das células A1 e A2 e os valores estão corretos.

Alguém já passou por isto? O que fazer?

Obrigado

Share this post


Link to post
Share on other sites
jpaulino

É um "problema" de precisão do Excel, pois o Excel cumpre o standard IEEE 754 e é uma questão de limitação do máximo/mínimo.

Lê estes artigos pois ambos explicam melhor do que eu esta questão:

http://blogs.office.com/b/microsoft-excel/archive/2008/04/10/understanding-floating-point-precision-aka-why-does-excel-give-me-seemingly-wrong-answers.aspx

http://support.microsoft.com/kb/78113

Share this post


Link to post
Share on other sites
Kalambata

Tenho aqui um problema que nunca me tinha surgido.

É o seguinte:

valor da Célula A1 ( Resulta do somatório de várias células) --> 1.684,190000000000000

valor da Célula A2 ( idem ) --> 1.684,190000000000000

valor da Célula A3 ( =A2-A1 ) --> -0,000000000001819

valor da Célula A4 ( =A1-A2 ) --> 0,000000000001819

Se nas células A1 e A2 eu introduzir manualmente os valores o resultado é, como pretendo, 0,000000000000000

Verifiquei, com 15 casas decimais, todos os valores que influenciam o resultado das células A1 e A2 e os valores estão corretos.

Alguém já passou por isto? O que fazer?

Obrigado

Obrigado pela resposta. De facto desconhecia este "problema".

Uma vez que o resultado =0 ou <>0 é fundamental para o comportamento de outras funções a solução foi usar a função =ROUND()

Share this post


Link to post
Share on other sites
jpaulino

Aqui fica mais uma curiosidade sobre o standard IEEE 754 ... a formula seguinte devolve o resultado Falso quando deveria dar Verdadeiro :/

=5,1-5=0,1

Share this post


Link to post
Share on other sites
ruirodrigues1971

Já me aconteceu estar a programar em VB.Net e ter pessoas a verificar os cálculos em Excel e tivemos esse problema hehehe ... e o que era engraçado é que o cálculo em VB.NET estava mais correto que o cálculo das tabelas oficiais legais que saíram em diário da república que como foi óbvio usaram a norma do excel (pois batiam com a nossa simulação em Excel hehehe). Só que ficamos com um problema porque o cliente usava as tabelas oficiais menos precisas hehehe ... já nem me lembro como resolvemos esse problema da diferença dentro do VB.NET

Edited by ruirodrigues1971

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.