Notifications
Clear all

Exibir todos os algarismos depois da vírgula

3 Posts
2 Usuários
0 Reactions
812 Visualizações
(@mic80)
Posts: 0
New Member
Topic starter
 

Boa noite Srs(as). Espero que me ajudem. Estou com problema no excel 2013 que acontece da seguinte maneira:

Preciso que a célula exiba todos os algarismos depois da vírgula, sem aproximação.
Por exemplo, estou trabalhando com a fórmula do "Módulo 97, base 10" (4889420118260114 * 100)/97. A célula exibe como resultado o
número 5040639297175370,00000000000000000000(independente do número de casas decimais que defino na formatação).
Ela deveria exibir 5040639297175375,2577319587628866. Já tentei de tudo ou quase tudo, inclusive tentei trabalhar apenas
com o resultado depois da vírgula utilizando a função “=A2-INT(A2)” e nada. Já formatei de tudo quanto é jeito e não obtive
sucesso. Espero que tenha uma solução para este problema, Será que estou comendo bola? Desde já agradeço.

 
Postado : 03/01/2015 8:17 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Nas versões 2010 e anteriores há uma limitação de precisão para exibição de números, em 15 dígitos.
Após essa "barreira" do sistema, são exibidos somente Zeros. Não sei sobre o 2013, porem pela descrição do problema, creio que não alterou.
Veja em :
http://office.microsoft.com/en-us/excel ... 42495.aspx
http://office.microsoft.com/en-us/excel ... 73849.aspx
http://office.microsoft.com/en-us/excel ... 99291.aspx

 
Postado : 04/01/2015 7:17 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Para no Excel visualizar "corretamente" todos os dígitos de um numero com mais de 15 dígitos, é necessário incluir o numero como Texto/String.
Porem efetua cálculos diretamente no Excel irá gerar o problema relatado.
Pesquisando, no VBA a o tipo Decimal tem uma"precisão" de 29 dígitos (se não me engano), mas ainda fica aquém de algumas calculadoras/aplicativos.
No seu exemplo montei uma UDF para que possa ter uma ideia.
O valor a ser utilizado deve ser digitado em uma célula como texto (utiliza o apóstrofe antes de começar a digitar o valor) veja em B2
a UDF

Function Ver_Num(rng As Range) As String
Dim mNum As String
mNum = Cells(2, 1).Value '"4889420118260114"
Ver_Num = ((CDec(rng.Value2) * 100) / 97)
End Function
 
Postado : 04/01/2015 1:17 pm