napisał: michalko postów: 25
umieszczony: 16 sierpnia 2007 14:50
|
|
Do Rycho:
Z tym przechowywaniem jako Double to ciekawe, ale u mnie błąd chyba nie wynika z tego. W Accesie mam ustawione jako double.
Poza tym jak pisałem to tabela przestawna dodaje źle, ale jeżeli liczby tworzące dane (schodzenie do szczegółów danych) dodam zwykłą formułą sumy to wynikiem jest zwykłe zero bez żadnych miejsc po przecinku a w danych występuje tylko jedno miejsce po przecinku. Tak więc jeden plik i dwie różne sumy
Po prostu to dziwne
Dzięki za podpowiedź :) |
|
napisał: Rycho postów: 291
umieszczony: 14 sierpnia 2007 18:02
|
|
Witam.
Cytat:Mój excel 2002 nie umie czasem zsumować prostych kwot.
Nie jest to prawdą. 
Jestem księgowym i dla mnie pojęcie 'kwota' ma tylko jedno znaczenie 'pewna suma pieniędzy', a więc liczba złotych i groszy.
Np. formuła =100 *22% nie liczy podatku VAT od 100zł bo taka formuła to =zaokr(100*22%;2).
Tu dygresja. Swojego czasu toczyłem wojnę z ZUS o jeden grosz (niedopłata była 1 grosz ale jej konsekwencją były już tysiące złotych - autentycznie) bo urzędniczki nie potrafiły prawidłowo dokonać przeliczenia na kalkulatorze. Dopiero po kilku miesiącach dyrektor ZUS wydał zarządzenie wyjaśniające sposób dokonywania takiego przeliczania bo mój przypadek nie był wyjątkiem 
W temacie.
Cytat:Dzieko w podstawówce wie, że to zero a nie e do -14tej.
... ale także wie, że, na ogół, nie da się przedstawić ułamka dziesiętnego w binarnym systemie pozycyjnym, w jakim liczą komputery; skończony ułamek dziesiętny nie musi być skończonym ułamkiem 'binarnym'.
Bill, w specyfikacji excela, napisał, że liczby typu double są przechowywane z dokładnością 15 cyfr znaczących i trzeba zawsze o tym pamiętać. Dodatkowo, format 'waluta'(jak i inne formaty) w arkuszu excela jest tylko formatem a liczby są przechowywane jako Double i to co widzimy na ekranie jest wynikiem niejawnego zaokrąglenia dla potrzeb tego formatu.
Reasumując, zapisując algorytm w arkuszu należy zawsze pamiętać o konieczności stosowania zaokrągleń przy pomocy właściwych funkcji.
W tabelach accessa możesz korzystać z typu 'waluta'. Z helpa "Przechowuje dane jako 8-bajtowe liczby o precyzji do czterech miejsc dziesiętnych. Tego typu danych należy używać do przechowywania danych finansowych, gdy użytkownik nie chce, aby program Access zaokrąglał wartości."
IMHU u Ciebie błąd jest (zły typ) już po stronie przechowywania danych w bazie.
Koniec przynudzania - rozwiązanie (excel 2002):
-w danych jest kolumna 'Kwota'
-w tabeli przestawnej zamiast pola 'Kwota' użyj pola obliczeniowego
-> z menu paska 'tabela przestawna' 'formuły' / 'pole obliczeniowe'
-> Formuła '= ZAOKR(Kwota;2)'
Rycho |
|
napisał: Trebor postów: 1209
umieszczony: 14 sierpnia 2007 16:47
|
|
Spróbuj te dane zsumować i zaokrąglić do wymaganej liczby cyfr po przecinku.
Pozdrawiam |
|
napisał: michalko postów: 25
umieszczony: 13 sierpnia 2007 12:42
|
|
Witam
Mój excel 2002 nie umie czasem zsumować prostych kwot. Np. w tabeli przestawnej widzę sumę w danych zero, klikając na to zero nie ma tam zera tylko np -1,4210854715202E-14.
Jak dwa razy klikne na dane z jakich to zero powstało to widać np że jest to suma z następujących ilości:
40
60
20
60
-40
-60
-20
-60
Dzieko w podstawówce wie, że to zero a nie e do -14tej. Jak się coś innego podzieli przez to zero to nie wyskakują błędy tylko astronomiczne liczby. Dane tabeli pochodzą z kwerendy accessa i tak tez dane są wpisane jako liczby całkowite
Ciekawe czy w was też sa takie rzeczy?
Czy można się tego jakoś pozbyć? |
|
 wstecz 1 dalej  wszystkich stron: 1
|