Jak się uchronić przed błędnymi wynikami obliczeń w Excelu?
Zrobiłeś bilans aktywów i pasywów. W komórce B8 wpisałeś funkcję sprawdzającą, czy aktywa są równe pasywom. Jednak funkcja ta zwraca błędny wynik.




Rys. 1. Błędny wynik obliczeń w komórce B8
Jeśli zaznaczysz tę komórkę i wybierzesz polecenie menu Narzędzia/Inspekcja formuł/Szacuj formułę, to zauważysz, że wynik dodawania i odejmowania nie jest równy 0, lecz różni się od zera na 13. miejscu po przecinku.



Rys. 2. Sprawdzenie wyników działań arytmetycznych poprzez polecenie Szacuj formuły
Zastanawiasz się, skąd ta różnica. Jest ona wynikiem niedoskonałości liczb z ułamkiem dziesiętnym. Chodzi o to, że liczby takie przechowywane są w postaci zerojedynkowej w określonej jednostce pamięci komputera (z reguły o wielkości 8 bajtów). Nie wszystkie liczby z ułamkiem dziesiętnym mają swoje dokładne odzwierciedlenie w postaci zerojedynkowej w tej jednostce pamięci. Takie liczby są zaokrąglane do najbliższej liczby, która ma swoje odzwierciedlenie w postaci zerojedynkowej. Efekt ten możesz zaobserwować, jeśli niektóre liczby z ułamkiem dziesiętnym wyświetlisz w postaci widocznych kilkunastu miejsc po przecinku.
Złe obliczenia mogą zostać dokonane, jeśli w jednym działaniu użyte są przynajmniej trzy liczby, z których jedna ma ułamek dziesiętny. Aby wynik w komórce B8 był poprawny, należy obliczenia zawrzeć w funkcji ZAOKR. W tym celu zmień formułę na poniższą:
=JEŻELI(ZAOKR(B3+B4-B5-B6;2)=0;"OK";"Błąd")
Wynik obliczeń będzie teraz zaokrąglany do dwóch miejsc po przecinku i nie będzie już ukazywał błędu.



Rys. 3. Bilans aktywów i pasywów po zmianie formuły w komórce B8
Jeśli potrzebujesz dokładniejszych obliczeń, to zaokrąglaj wynik działań arytmetycznych do większej liczby miejsc po przecinku.
Zaloguj się, aby dodać komentarz
Nie masz konta? Zarejestruj się »