< návrat zpět

MS Excel


Téma: Umí Excel sčítat? rss

Zaslal/a 11.2.2016 2:03

To vypadá jako hodně hloupá otázka. Když odpovím, že ano, ale jen zhruba, vyvolám nejspíš dost emocí.
Jako už několikrát v minulosti, obrátila se na mne opět jedna z účetních, která bez Excelu při pomocných rozborech nedá ránu. Napsala si rafinovanou kontrolu dat, završenou testem na shodu křížových součtů. A co čert nechtěl, součty neseděly. Žádné pátrání po chybě nevedlo k cíli. Nakonec paní účetní vzala do ruky kalkulačku a výsledky z Excelu přepočítala. Asi už tušíte, že jí součty klaply. Lhal Excel, když jeho součty neseděly.
Kdo zná základy numerické matematiky, ten ví, že součtem libovolného počtu čísel s omezeným počtem desetinných míst nemůže vzniknout číslo s větším počtem desetinných míst. Takovou zásadu Excel nevyznává a snadno dodá součet zhruba správný, ale o fous jiný, než by se slušelo. Tohle Excel provedl paní účetní a její test shody proto nedopadl, jak dopadnout měl.
Rada nebyla složitá technicky, ale filozoficky. Musel jsem paní účetní sdělit, že Excelu nesmí až tak moc věřit a pokud v něm posčítá hodně čísel, musí výsledek navíc pro sichr zaokrouhlit, aby ho zbavila technických nečistot, které na sebe během sčítání mohly nabalit. Mám bohužel pocit, že jsem v paní účetní vyvolal pocit, že už nemůže věřit vůbec ničemu.
Sám jsem tímto šokem prošel před léty a od té doby si všechny účetnické úlohy převádím do celých čísel ("na haléře") a v nich provádím své výpočty. Teprve hotové výsledky vracím do řádu korun.
Nedávno mne tady na fóru upozornil Lubo na datový typ VBA Currency, na který jsem úplně zapomněl. Testy s tímto typem na přesnost součtu samozřejmě dopadly správně a bez rozostření dat. Nic takového na listu k dispozici není. Takže jinou spolehlivou možnost, než počítání v celých číslech k dosažení přesných hodnot, pro list neznám. Berlička se zaokrouhlováním moc cti Excelu nedělá.

Zaslat odpověď >

Strana:  « předchozí  1 2
#030064
avatar
Palooo, nic jste nepochopil, test na shodu vyžaduje rovnost. Pokud shoda neplatí, Excel hlásí chybu shody. Kecy o tom, že účetní potřebuje čísla jen na setiny, s tím nemají co dělat. Dokud ten rozdíl neuchápete, budete asi dál psát blbosti...citovat
#030066
avatar
Rád to tady čtu, je to pro mě inspirativní. Vždycky se něco nového dozvím.citovat
#030068
Hav-Ran

vovka.h napsal/a:

Kecy o tom, že účetní potřebuje čísla jen na setiny, s tím nemají co dělat. Dokud ten rozdíl neuchápete, budete asi dál psát blbosti...

Ja osobne dávam toto za pravdu, sám som roky pracoval ako účtovník. Pracuje sa s veľa desatinnými číslami číslami, lebo pri prepočítavaní rôznej meny navzájom je to pri cenách napr. za kus absolútne nutné, 6až7 desatinných miest krát tisíce kusov dá sakra rozdiel v celkových súčtoch a to si žiadny účtovník nedá na triko. Alebo - zo súčasnosti - môj telefónny operátor mi oznámi napr. zostatok kreditu: 52,210689 Euracitovat
#030069
avatar
Hav-Rane, jako účetní bych si asi na chleba nevydělal, ale mám za sebou vývoj dvou účetních systémů pro podniky zahraničního obchodu socialistické éry, na kterém jsem se intenzivně podílel. Myslím, že vím velmi dobře, o čem je řeč při přepočtech kurzů, kurzových rozdílech a "půlhaléřových" diferencích.
Přesto si nemyslím, že by nastavený režim "přesnost podle zobrazení", který nabídl elCHa, nebyl pro účtárnu použitelný. Jen se asi musí dát bacha, aby výpočty na víc desetinných míst probíhaly v buňkách s vhodným naformátováním. Alespoň tak tomu režimu rozumím. Zatím jsem testy v tom směru neprovedl, ale doufám, že se nemýlím.citovat
#030078
avatar
Ahoj! Snad k tématu:
http://stackoverflow.com/questions/18504637/vba-double-vs-single-roundingcitovat
icon #030080
avatar
Celá "chyba" je spôsobená používaním pohyblivej čiarky (floating point). Vo svete núl a jedničiek, na ktorý si excel čísla prevádza, to inak dosť dobre nejde. Ľudia, ktorí by v tom radi videli senzáciu a fatálne zlyhanie excelu, by mali pochopiť, že excel nepočíta spôsobom, aký sme používali pri štúdiu matematiky na ZŠ, proste, žiadne krátenie zlomkov a podobné triky, miesto toho prevádza všetko na binárne reťazce potrebnej dĺžky a tie potom spracuje. Zvláštne, že sa tomu divia i ľudia s istými programátorskými skúsenosťami.citovat

Strana:  « předchozí  1 2

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Čas od do

lubo • 19.4. 16:30

Makro smyčka

MilanKop • 19.4. 10:46

Makro smyčka

elninoslov • 19.4. 9:02

Čas od do

elninoslov • 19.4. 8:46

Čas od do

jarek1111 • 18.4. 13:46

Čas od do

lubo • 18.4. 11:13

Čas od do

jarek1111 • 18.4. 8:32