Como aumentar o limite de tamanho numérico no Libre Office Calc?

Quando insiro um número maior de 20 (vinte) dígitos o libre Office Calc transforma o valor em notação científica e altera o valor original. Ex:

Número original: 11527901551993100074017003763328

Número gravado no campo: 1,15279015519931E+031

Número exibido: 11527901551993100000000000000000

Como devo proceder para corrigir essa limitação?

É que existe uma limitação para formatação de números de até 15 caracteres. A solução para evitar que seja visualizados com a notação científica é formatar a célula como texto

1 Like

Se o seu número não for usado para calculo, formate a célula como texto, conforme já mencionado por @Reinaldo1 .

Conforme dito acima, o computador irá arredondar seu número em decorrência do tamanho em bits de sua representação numerica interna.

Se desejar trabalhar com números de precisão “infinita” terás de faze-lo através de macros e funções especiais, decompondo os números por potencia de 10 na sua forma algébrica.

exemplo

123456789 = 123*1000*1000 + 456 * 1000 + 789
987654321 = 987*1000*1000 + 654 * 1000 + 321

dali terá de criar um conjunto de funções para tratar os numeros da forma algebrica, tal como se faz no segundo grau:

123456789 * 987654321 =

123*1000*1000 + 456 * 1000 + 789
X
987*1000*1000 + 654 * 1000 + 321
_________________________________
(123*1000*1000 + 456 * 1000 + 789) * 321
+
(123*1000*1000 + 456 * 1000 + 789 ) * 654 *1000
+
(123*1000*1000 + 456 * 1000 + 789 ) * 987 * 1000 * 1000

crie então uma função do tipo

=ALGEB_MULT(String1, String2) 
=ALGEB_SOMA(String1, String2), etc...

que implemente o algoritmo de multiplicação algébrica acima.

A criação dessa função pode ser feita em Basic puro. Veja na ajuda como se cria uma função em basic a ser usada no Calc.

1 Like

Olá,

Até onde eu sei a precisão para números com muitos algarismos em planilhas eletrônicas é limitada a 15. A partir do 16º eles são descartados, pois o número vira quatrilhão e a unidade fica insignificante diante da magnitude do número.

A solução que uso é armazenar estes números enormes como texto:

  • Formatar a célula como texto;
  1. Inserir o número.


    ou

  • Digitar diretamente na celula inserindo o apóstrofo (’) antes do
    número.

Atte.
Grafeno (Antonio)

1 Like

Olá, senhores!

Estou enfrentando o mesmo problema que enfrentava o usuário que fez a pergunta inicial. No meu caso, estou trabalhando uma planilha em que uma das colunas é preenchida com número de processo, que conta com 17 dígitos.

Minha ideia para tentar resolver o problema é informar os 15 primeiros dígitos e, por meio de fórmula que calcule o dígito verificador (dois últimos dígitos), fazer a formatação automática do número do processo, sendo apresentado na célula o número no formato 00000.000000/0000-00. Há como fazer isso?

A fórmula para cálculo do DV é a seguinte:

Dado o número único de processo 35041.000387/2000, os dígitos verificadores serão calculados do seguinte modo:

a) (0x2)+(0x3)+(0x4)+(2x5)+(7x6)+(8x7)+(3x8)+(0x9)+(0x10)+ (0x11) + (1x12) + (4x13) + (0x14) +(5x15)+(3x16);

b) 0+0+0+10+42+56+24+0+0+0+12+52+0+75+48=319

c) 319÷11 = 29; RESTO = 0;

d) 11-0=11 - despreza-se a casa da dezena; e

e) o 1º DV será 1 (um).

OBSERVAÇÃO: o número encontrado para o 1º DV, deverá ser colocado à direita do número único de processo, dando continuidade aos procedimentos relativos ao cálculo do 2º DV, conforme a seguir:

a) (lx2)+(0x3)+(0x4)+(0x5)+(2x6)+(7x7)+(8x8)+(3x9)+(0x10)+(0x11)+(0x12)+(1x13)+(4x14)+(0x15)+(5x16)+(3x17);

b) 2+0+0+0+12+49+64+27+0+0+0+13+56+0+80+51=354

c) 354÷11 = 32; RESTO = 2;

d) 11-2=9; e

e) O 2º DV será 9 (nove).

Assim sendo, o número único do processo dado como exemplo, será acrescido dos dígitos verificadores 35041.000387/2000-19.

Sou usuário iniciante de planilhas. Assim, entendo pouco e não sei se o que quero é viável.

Aguardo a ajuda dos usuário avançados.

De antemão, já agradeço a ajuda.

Boa tarde,
Para criar o formato de saída utilize o seguinte código de formado da célula:
00000".“000000”/“0000”-"00
Vc vai entrar em outra coluna com o numero do processo(somente números) e na célula que vc inseriu o formato acima concatene o numero do processo com o dígito calculado(que pode ser calculado em outra celula ou diretamente na formula de concatenação(Ex: 350410003872000&digito1&digito2, sendo digito1 e digito2 o nome das células onde são calculados os respectivos dígitos).
Não ficou claro a forma de calcular dígito, pois vc não disse de onde vem os números.
sds.

Ola @heyarth segue uma alternativa usando macro.

O arquivo tem que ser ods.

ogirdoor_ask_GS.ods (20.0 KB)