VBA a dlouhá čísla Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

geniusz
nováček
Příspěvky: 18
Registrován: březen 13
Pohlaví: Muž
Stav:
Offline

VBA a dlouhá čísla

Příspěvekod geniusz » 29 bře 2013 10:52

Mám informační otázku k zobrazovaní a případným vypočtu s dlouhými čísly a vědeckému zápisu čísel!

Když v VBA editoru napíšu
DlouheCislo = 999999999
což je o 9-ti místné číslo ( do 999 milionu)
kompilátor to ponechá nezměněné:

Kód: Vybrat vše

DlouheCislo = 999999999


Když v VBA editoru napíšu
DlouheCislo = 9999999999
což je o 10-ti místné číslo (od 1 Miliardy)
kompilátor toto změni na

Kód: Vybrat vše

DlouheCislo = 9999999999#

Křížek je přidaný do 15-ti místného čísla (do 999 bilionu)

Delší čísla (od 1 biliardy) jsou zaměněna na vědecký zápis
Když v VBA editoru napíšu
DlouheCislo = 9999999999999999
což je o 16-ti místné číslo (od 1 biliardy)
kompilátor toto změni na

Kód: Vybrat vše

DlouheCislo = 1E+16


Otázka zní:
1. proč je přidaný křížek?
2. Jsou výpočty ve vědeckém zápisu přesné a jak je provádět?
3. Dá se číslo 1E+16 převézt zpět na vystup do 9 999 999 999 999 999?
4. Později mne napadla otázka velmi dlouhých čísel v poli s vlastnost Automatické číslo

Neřeším problém, jen mi tyto hodnoty zobrazovalo při testovaní mé funkce, a chvíli mi trvalo než jsem se ujistil, že to tak má být.
Za info děkuji

P.s. Bylo by ale hezké, řešit problém jak zobrazit 1E+16 v poli "Základ daně" :-)

Reklama
guest
Pohlaví: Nespecifikováno

Re: VBA a dlouhá čísla  Vyřešeno

Příspěvekod guest » 29 bře 2013 14:47

# značí datový typ Double ... -1,79769313486232E308 až -4,94065645841247E-324 pro záporné hodnoty

Přesnost ve dvojkové soustavě nejde zaručit úplně.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů