| Berechnen in Microsoft Excel (Diese Seite wird zur Zeit überarbeitet) | Home |
![]()
| Seiteninhalt Wer häufig mit Microsoft Excel arbeitet und öfters komplexe Arbeitsmappen mit rechenintensiven Formeln und Funktionen erstellt, sollte sich vorzugsweise mit den Themen Berechnen, Ungenauigkeiten/Präzision und Rechenfehler etwas näher beschäftigen. Dieses Fachwissen hilft Ihnen bei der Erstellung von performanten, optimierten und sauber strukturierten Arbeitsmappen. Auf dieser Seite werden verschiedene Berechnen-Themen besprochen. Sie erhalten
Antworten auf diese und viele weitere Fragen: |
Leserprofil Alle Excel-Anwender ohne spezielles Fachwissen |
![]()
| Verwandte Themen und Seiten » Optimieren von Arbeitsmappen » Optimieren von VBA-Programmen » Verknüpfungen und externe Bezüge |
![]()
Berechnung einer
Formel
Arbeitsweise von Formeln
Reihenfolge
der Ausführung von Operationen in Formeln
Beschränkungen und Schwächen der IEEE-Spezifikation
Links und Downloads
Bugs und Probleme
Weitere Informationen
Downloads
Text folgt...
Allgemeines
Eine Formel ist eine Gleichung, die für die Analyse von Daten in einem
Tabellenblatt eingesetzt wird. Mit Hilfe von Formeln können Sie mathematische Operationen
wie Additionen, Multiplikationen oder Vergleiche von Tabellenwerten durchführen;
weiterhin können Formeln für die Verknüpfung von Werten verwendet werden. Formeln
können sich auf andere Zellen in demselben Tabellenblatt, auf Zellen in anderen
Tabellenblättern derselben Arbeitsmappe oder auf Zellen in Blättern anderer
Arbeitsmappen beziehen. Im folgenden Beispiel wird 25 zum Wert der Zelle B4 addiert und
anschliessend das Ergebnis durch die Summe der Zellen D5, E5 und F5 dividiert.
Formelsyntax
Formeln berechnen Werte in einer bestimmten Reihenfolge, die als Syntax bezeichnet
wird. Die Syntax der Formel beschreibt die bei einer Berechnung durchzuführenden
Rechenoperationen. Eine Formel in Microsoft Excel beginnt mit einem Gleichheitszeichen (=)
vor der eigentlichen Rechenanweisung. Beispielsweise subtrahiert die folgende Formel 1 von
5. Das Formelergebnis wird anschliessend in der Zelle angezeigt.
=5-1
Zellbezüge
Eine Formel kann sich auf eine Zelle beziehen. Wenn eine Zelle denselben Wert wie
eine andere Zelle enthalten soll, geben Sie in die Zelle ein Gleichheitszeichen ein und
dahinter den Bezug auf die zweite Zelle. Die Zelle, die die Formel enthält, wird als
Nachfolgerzelle bezeichnet; ihr Wert hängt von dem Wert einer anderen Zelle ab. Alle
Änderungen an der Zelle, auf die sich die Formel bezieht, wirken sich auf die Zelle aus,
die die Formel enthält. Die folgende Formel multipliziert den Wert in Zelle B15 mit 5.
Die Formel berechnet den Wert neu, sobald sich der Wert in der Zelle B15 ändert.
=B15*5
Formeln können sich auf Zellen oder auf Zellbereiche beziehen sowie auf Namen oder
Beschriftungen, die Zellen oder Bereiche darstellen.
Tabellenfunktionen
Microsoft Excel enthält eine Vielzahl von vordefinierten, d. h. integrierten
Formeln, die als Funktionen bezeichnet werden. Funktionen können zur Durchführung von
einfachen oder komplexen Berechnungen verwendet werden. Die in Tabellenblättern am
häufigsten verwendete Funktion ist die Funktion SUMME, die für die Addition von
Zellbereichen verwendet wird. Sie können zwar eine Formel erstellen, um den Summenwert
für einige wenige Zellen mit Werten zu berechnen; mit der Tabellenfunktion SUMME können
Sie jedoch mehrere Zellbereiche berechnen.
Reihenfolge der Ausführung von Operationen in Formeln
Rang |
Operator | Beschreibung | Operator-Typ |
| 1 | : (Doppelpunkt) | Bereichsoperator, der einen Bezug auf alle Zellen erstellt, die zwischen zwei Bezügen liegen, einschliesslich der zwei Bezugszellen | Bezugsoperator |
| 2 | , (Komma) | Vereinigungsoperator, der mehrere Bezüge zu einem Bezug zusammenfasst | Bezugsoperator |
| 3 | (Leerzeichen) | Schnittmengenoperator, der einen Bezug auf die Zellen erstellt, die beiden Bezügen gemeinsam sind | Bezugsoperator |
| 4 | - | Negation (wie z.B. 1) | Arithmetischer Operator |
| 5 | % | Prozent | Arithmetischer Operator |
| 6 | ^ | Potenzierung | Arithmetischer Operator |
| 7 | * bzw. / | Multiplikation bzw. Division | Arithmetischer Operator |
| 8 | + bzw. - | Addition bzw. Subtraktion | Arithmetischer Operator |
| 9 | & | Verbindet bzw. verkettet zwei Werte zu einem zusammenhängenden Textwert | Textoperator |
| 10 | = < > <= >= <> | Vergleiche | Vergleichsoperator |
Beschränkungen und Schwächen der IEEE-Spezifikation
Es gibt einige Beschränkungen bzw. Schwächen der IEEE-Spezifikation 754, die in drei allgemeine Kategorien eingeordnet werden können:
Weitere Informationen über die IEEE-Spezifikation finden Sie hier:
Wikipedia: IEEE floating-point standard
http://en.wikipedia.org/wiki/IEEE_floating-point_standard
IEEE-754 References
http://babbage.cs.qc.edu/courses/cs341/IEEE-754references.html
Affects all worksheets in the active workbook.
Does not affect numbers in the General format, which are always calculated with full
precision.
Slows calculation because Excel must round the numbers as it calculates.
Caution Once you switch to calculating on displayed values, Excel stores all constant
values as their displayed values, and full precision values cannot be restored.
Unerklärbarer Laufzeitfehler 6 "Überlauf"
Wenn Sie Berechnungen mit VBA durchführen, können verschiedene Probleme entstehen. Häufigstes Problem ist das Auftreten des Laufzeitfehlers 6 "Überlauf" (Overflow). Die Ursache dieses Fehlers liegt an den Datentypen der verwendeten Variablen. Anhand eines kleinen Code-Beispiels lässt sich das Problem schnell erkennen.
Code-Beispiel
Sub ÜberlaufTest()
Dim intVariable As Integer
Dim dblVariable As Double
intVariable = 256
dblVariable = 256 * intVariable
End Sub
Wenn Sie die obige Prozedur ausführen, wird auf der Programmzeile "dblVariable = 256 * intVariable" der Überlauf-Fehler auftreten. Wieso der Fehler auftritt, ist auf den ersten Blick nicht unbedingt erkennbar, da die Zuweisung an sich korrekt ist. Die Variable dblVariable besitzt den Datentyp Double und müsste somit problemlos ausreichen, das errechnete Resultat 65'536 (256 * intVariable) aufnehmen zu können. Da jedoch VBA intern ein bestimmtes Vorgehen besitzt, kann die Zuweisung nicht wie erwartet durchgeführt werden.
Vorgehen von VBA zur Berechnung der mathematischen Operation
Aus Speicheroptimierungsgründen prüft VBA vor der Berechnung der Operation zuerst
die verwendeten Datentypen und Werte. In unserem Fall besitzt intVariable den Typ Integer,
d.h. es ist ein Wertbereich von -32'767 bis 32'767 zulässig. Die Konstante (Zahl) 256
passt ebenfalls in einen Integer, d.h. intern betrachtet VBA die Zahl als kleine Ganzzahl.
TEXT FOLGT...
XL97: Updating Incorrect Calculations on Worksheet
Created on Pentium
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q124310
XL97/XL98: "Overflow" Error Running
Procedure with Math Calculation
http://support.microsoft.com/default.aspx?scid=kb;en-us;q125900
XL97/XL98: Comparison of Values Does Not Return
Correct Result
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q48606
XL97: MS Excel Does Not Resume Calculation After
Halting
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q171239
Dieses Problem wurde im Microsoft Excel 97 Service Release 1 (SR-1)
behoben.
XL (all Versions): How to correct rounding errors in
floating-point arithmetic
http://support.microsoft.com/default.aspx?scid=kb;en-us;214118
XL (all Versions): Last Digits Changed to Zeroes
When You Type Long Numbers in Cells
http://support.microsoft.com/default.aspx?scid=kb;en-us;269370
XL2002: The Values That You Save in an XML
Spreadsheet Do Not Match the Values That Appear in Excel
http://support.microsoft.com/default.aspx?scid=kb;en-us;328996
XL97: How the Current Mode of Calculation Is Determined
XL: Bestimmen des aktuellen Berechnungsmodus in
Excel
http://support.microsoft.com/?scid=kb;de;214395
XL: Description of how Excel determines the current mode of calculation
http://support.microsoft.com/?scid=kb;en-us;214395
XL2000: Excel May Change the Precision Mode
of the Floating-Point Control Word
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q263213
![]()
Zuletzt aktualisiert am 27.09.2004
/ 17:30 Uhr
© 2002-2004 by Philipp von Wartburg, CH-8917 Oberlunkhofen
Alle Rechte vorbehalten