Excel nie potrafi odejmować

Anonimowe
2013-08-07T16:45:11+00:00

Wygląda na to, że Excel nie potrafi wykonać bardzo prostego odejmowania.

Formatujemy komórki od A1 do D1 ustawiając format liczbowy z 2 miejscami dziesiętnymi. Wprowadzamy następujące dane do komórek:

A1 11215,71

B1 =15028,31-A1

C1 3812,60

D1 =C1-B1

E1 =D1=0

W wyniku takiego działania w komórce D1 uzyskujemy wartość 0,00, natomiast wg Excela to "zero" nie jest równe zeru, co skutkuje wartością FAŁSZ w komórce E1.

Moim zdaniem jest to oczywisty błąd w programie który powinien być jak naszybciej naprawiony przez Microsoft.

Microsoft 365 i pakiet Office | Excel | Do użytku domowego | Windows

Pytanie zablokowane. To pytanie zostało zmigrowane ze społeczności pomocy technicznej firmy Microsoft. Możesz zagłosować, czy pytanie jest pomocne, ale nie możesz dodawać komentarzy ani odpowiedzi, ani też śledzić pytania.

Komentarze: 0 Brak komentarzy
Odpowiedź zaakceptowana przez autora pytania
Anonimowe
2013-08-12T16:01:26+00:00

Wygląda na to, że napisaliśmy posta praktycznie w tym samym czasie, tyle że ja byłem minimalnie później :-) No cóż, już wiemy z czego wynika problem. A tak na marginesie to przed przeczytaniem Twojego posta właśnie bardzo się zdziwiłem gdy ten sam efekt uzyskałem w OpenOffice Calc stosując prostą formułę =11,34-11,33. Teraz wszystko jasne - nie ma jak stare dobre liczydło ;-)

Czy ta odpowiedź była pomocna?

Komentarze: 0 Brak komentarzy
Odpowiedź zaakceptowana przez autora pytania
Anonimowe
2013-08-12T15:36:14+00:00

Dziękuje za pozytywne podejście :)

„(…) Program Excel może przechowywać liczby z zakresu od 1,79769313486232E308 do 2,2250738585072E-308, jednak zachowuje tylko precyzję 15-cyfrową. To ograniczenie jest bezpośrednim rezultatem ścisłego przestrzegania specyfikacji IEEE 754 i nie jest związane z programem Excel. (…)”

"(...) Korygowanie błędów związanych z precyzją

Program Excel oferuje dwie podstawowe metody kompensacji błędów związanych z zaokrąglaniem: funkcja ZAOKR i opcje skoroszytu Dokładność jak wyświetlono lub Ustaw dokładność zgodnie z wyświetlaną. (...)"

więcej w artykule "Wyniki arytmetycznych obliczeń zmiennoprzecinkowych w programie Excel mogą być niedokładne" dostępnym pod: http://support.microsoft.com/kb/78113/pl

Czy ta odpowiedź była pomocna?

Komentarze: 0 Brak komentarzy

Dodatkowe odpowiedzi: 17

Sortuj według: Najnowsze
  1. Anonimowe
    2013-08-12T16:06:20+00:00

    Dokładnie tak samo to odebrałem.

    Napisałem, odświeżyłem, i od razu zacząłem testować Twój przykład, również w innych pakietach.

    Dziękuje za współpracę, zdecydowanie była owocna i umożliwiła mi „poszerzenie wiedzy” :)

    Pozdrawiam.

    Czy ta odpowiedź była pomocna?

    Komentarze: 0 Brak komentarzy
  2. Anonimowe
    2013-08-12T15:40:28+00:00

    No to jeszcze prościej bez żadnego zaokrąglania:

    1. Otwieramy Excela.
    2. Formatujemy komórki A1 do A6 - ustawiamy format liczbowy i 30 miejsc dziesiętnych.
    3. Wprowadzamy następujące wartości do odpowiednich komórek:

    A1 320,80

    A2 246,77

    A3 690,66

    A4 3393,09

    A5 =SUMA(A1:A4)

    A6 =4651,31-A5

    Po takich prostych operacjach w komórce A6 powinniśmy otrzymać wartość -0,01 a otrzymujemy -0,00999999999930878:

    Błąd jak byk!

    Pozdrawiam,

    Piotr

    Czy ta odpowiedź była pomocna?

    Komentarze: 0 Brak komentarzy
  3. Anonimowe
    2013-08-12T14:34:07+00:00

    Nieźle :-) ale nadal to tylko "workaround". Gdy mam ustawione formatowanie komórek z dokładnością do 30 miejsc po przecinku (bo mogę tak mieć), to problem nadal występuje, a poza tym włączenie tej opcji do bezpiecznych nie należy (możemy nieświadomie utracić dane w wielu miejscach). Nadal uważam że Microsoft powinien coś z tym zrobić, albo powinien wysłać swoich informatyków na podstawowe lekcje matematyki.

    P.S. Nie przekonasz mnie - jestem księgowym i dla mnie zawsze 2+2=4 a nie 3,99999999 ;-) A jak kalkulator mi źle liczy, to od razu ląduje w koszu, bo o jakichkolwiek błędach w obliczeniach nie może być mowy.

    Pozdrawiam,

    Piotr

    Czy ta odpowiedź była pomocna?

    Komentarze: 0 Brak komentarzy