Technikärgernis Tabellenkalkulation: So falsch rechnet Excel (Spiegel Online, 3.7.2008)
Technikärgernis Tabellenkalkulation
So falsch rechnet Excel
16-stellige Zahlen überfordern Excel. Ab der 15. Ziffer setzt das Programm Nullen ein – da arbeiten sogar Gratisrechner von Google und aus dem Windows-Zubehör exakter. SPIEGEL ONLINE zeigt die Macken von Microsofts Rechensoftware: vom Phantomschaltjahr bis zum Wochentagschaos.
Spiegel Online, 3.7.2008
{jumi [/images/jumisk/sharethis.php]}
Millionen Unternehmen, Behörden und Freiberufler auf der Welt
kalkulieren ihre Rechnungen, Stundenzettel und Budgetpläne mit
Microsofts Tabellenkalkulation Excel. Warum sollten
SPIEGEL-ONLINE-Redakteure dann nicht die Lösungen der
Kopfrechenmeisterschaft in Leipzig mit Excel ausrechnen?
{jumi [/images/jumisk/google420.php]}
Ganz einfach: weil Excel achtstellige Zahlen nicht fehlerfrei multiplizieren kann. Das haben einige Leser des
Rechenwettbewerbs auf SPIEGEL ONLINE
Jene wenigen Leser, die im Kopf oder per Elektro-Addierer
nachgerechnet haben, fanden den Fehler. Bei der Aufgabe, 29513736 mit
92842033 zu multiplizieren, gab Excel als Ergebnis 2740115251665290
aus. So stand es auch zuerst in der Auflösung auf SPIEGEL ONLINE.
Nur: Microsofts
Vorzeigeprogramm (Teil des Office-Pakets, Kostenpunkt je nach Lizenz:
100 bis 800 Euro) lag knapp daneben. Excel hat sich verrechnet – das
korrekte Ergebnis ist etwas kleiner, nämlich 2740115251665288, also
zwei weniger.
Der Grund: Die Lösung hat 16 Ziffern – eine zu viel für Microsofts
Rechensoftware. Denn Excel kann in diesem Fall nur 15 Ziffern
darstellen, setzt ab der 16. Ziffer Nullen ein und rundet.
Kurioserweise macht Microsofts Gratistaschenrechner aus dem
Windows-Zubehör diesen Fehler nicht. Er liefert das korrekte,
16-stellige Ergebnis. Genauso exakt arbeitet Googles kostenlose
Online-Tabellenkalkulation namens Google Spreadsheets.
Microsoft-Zeitrechnung, Geisterschaltjahre und Rundungsfehler – SPIEGEL ONLINE dokumentiert die kuriosesten Excel-Eigenarten:
Die Excel-Zeitrechnung beginnt 1900
Auch beim Kalenderrechnen schlagen Kopfrechner und Gratisprogramme Excel.
Kopfrechenkünstler brauchen weniger als eine Minute (mehr…), um zu berechnen, welcher Wochentag zum Beispiel der 29. Mai 1842 war.
Excel scheitert an dieser Aufgabe komplett. Es gibt zwar die schöne
Excel-Funktion zum Berechnen von Wochentagen (=WOCHENTAG(DATUM) – nur
funktioniert die nicht bei Datumsangaben vor 1900.
Denn Excel erkennt Datumsangaben vor 1900 überhaupt nicht als
solche, wie eine Flut an Hilferufen in Excel-Diskussionsforen
dokumentiert. Microsoft erklärt
den Hintergrund in einem Hilfetext so: "Excel speichert Datumsangaben
als fortlaufende Zahlen, damit sie für Berechnungen verwendet werden
können." Und "standardmäßig" beginnt diese Excel Zeitrechnung mit dem
1. Januar 1900 – der hat die Excel-Tageszahl 1. Der 1. Januar 2008 ist
in der Excel-Notation 39448 – denn dieser Tag liegt 39447 Tage hinter
dem 1. Januar 1900.
Das klingt ein wenig wie die Sternzeit aus "Star Trek", allerdings
fehlte dieser Science-Fiction-Zeit jede zuverlässig nachvollziehbare
Systematik. Ärgerlich an der Excel-Zeitrechnung: Die Software erkennt
keine negativen Tageszahlen an – Tage vor dem Nullpunkt 1900 existieren
also nicht.
Eine eigene Excel-Zeit für Mac-Besitzer
Völlig absurd erscheint die Excel-Zeitrechnung, wenn man die
Tabellenkalkulation auf Mac und PC parallel benutzt. Denn für
Apple-Rechner hat Microsoft eine eigene standardmäßig aktivierte
Excel-Apple-Zeitrechnung. Und die beginnt am 2. Januar 1904.
Microsoft
dokumentiert
das Datumsdurcheinander immerhin sehr hübsch mit Tabellen und
anschaulichen Beispielen. Demnach ist der 31. Dezember 9999 für
Mac-Excel der Tag 2957003, für PC-Excel hingegen der 2958465.
Alles klar?
Selbst wenn: Auch wer dieses System durchschaut, wird mit Excel
keine Wochentage vor 1900 beziehungsweise 1903 berechnen können. Dafür
gibt es Excel-Formeln von findigen Programmierern – oder offiziell undokumentierte, aber
funktionierende Werkzeuge in Googles webbasierter Gratis-Tabellenkalkulation Google Spreadsheets.
Das Excel-Phantomschaltjahr 1900
Fehler oder Service? Microsoft erklärt zu Beginn einer sogenannten
Problembeschreibung zwar freimütig, dass Excel "fälschlicherweise"
annimmt, "dass das Jahr 1900 ein Schaltjahr ist" – der Rest des Dokuments
ist aber eine Rechtfertigung dieses Fehlers. Die Geschichte beginnt
1983, und schuld ist demnach nicht Microsoft, sondern die
Software-Firma Lotus: "Als die erste Version von Lotus 1-2-3
veröffentlicht wurde, ging das Programm davon aus, dass das Jahr 1900
ein Schaltjahr ist, auch wenn dieses Jahr eigentlich kein Schaltjahr
ist."
Dies habe dem Programm die Verarbeitung von Schaltjahren erleichtert
und bei der "Mehrzahl der Datumsberechnungen in Lotus 1-2-3 keinerlei
Probleme" verursacht. Microsoft hat den Fehler nach eigenen Angaben nur
zwecks Kompatibilität übernommen: "Durch das Akzeptieren dieser Annahme
waren Microsoft Multiplan und Microsoft Excel in der Lage, das auch von
Lotus 1-2-3 verwendete fortlaufende Datumssystem zu nutzen."
Weil der Fehler in jeder weiteren Excel-Version erhalten blieb,
könne man den Fehler heute nicht korrigieren. In Microsoft-Deutsch:
"Die Nachteile einer solchen Korrektur überwiegen bei weitem die
Vorteile." Denn fast alle Datumsangaben in aktuellen
Microsoft-Excel-Arbeitsblättern würden dann um einen Tag
zurückspringen.
Das Phantomschaltjahr 1900 hingegen mache heute nur jenen wenigen
Menschen Ärger, die mit Datumsangaben zwischen dem 1. Januar und dem 1.
März 1900 Wochentage zuordnen wollen. Microsoft kommentiert lapidar:
"Da die meisten Benutzer keine Datumsangaben vor dem 1. März 1900
verwenden, tritt dieses Problem sehr selten auf."
Rundungsfehler – 0 ist manchmal weniger als 0
Diesen niedlichen Darstellungsfehler haben Excel-Nutzer schon vor
Jahren entdeckt, beschrieben und amüsiert wieder vergessen: Addiert man
mit dem Microsoft-Programm die Zahlen 0,05, -0,07, 0,02 und 0, ist das
Ergebnis nicht die offensichtlich richtige 0, sondern -3,46945E-18.
Den Fehler macht Excel allerdings heute noch – nach sieben Jahren
Spott
über die Software. Schuld ist – wieder mal – ein Rundungsfehler.
Versteckte Einschaltknöpfe, verwirrende Anleitungen, verrückte
Automaten – in der Reihe "Fehlfunktion" stellen wir in loser Folge
Technikärgernisse vor, die Millionen nerven. Schicken Sie uns Ihre
Anregungen mit einer kurzen Begründung. Am besten per
E-Mail.
{jumi [/images/jumisk/google720.php]}