Zusammenfassung
Lernen Sie die finanzmathematischen Funktionen von VBA und deren Anwendung kennen.
Techniken
VBA, Berichte
Voraussetzungen
Access 97 und höher
Beispieldatenbank
Finanzfunktionen97.mdb, Finanzfunktionen00.mdb
Roland Grothe, Hanau
Die in diesem Beitrag vorgestellten finanzmathematischen Funktionen helfen Ihnen bei der Erstellung von Wirtschaftlichkeitsberechnungen, der Kalkulation von Krediten, bei Berechnungen von Abschreibungen sowie der Ermittlung von Zinssätzen. Sie sind immer dann von Nutzen, wenn es darum geht, einen regelmäßigen Zahlungsfluss zu berechnen.
Wie auch die „normalen‘ mathematischen Funktionen sind diese speziell auf die Belange der Kaufleute abgestimmten Routinen nichts anderes als eine für den Anwender vereinfachte Form der Eingabe komplizierter Berechnungen, bei denen lediglich die Eckdaten des Zahlungsflusses, beispielsweise eines Kredites, eingegeben werden müssen.
Die finanzmathematischen Funktionen lassen sich grob in drei Bereiche mit Berechnungen für Annuitäten, Abschreibungen und Cash-Flow gliedern. Die Funktionen der einzelnen Gruppen beziehen sich bei der Berechnung meist auf die gleiche Grundformel und unterscheiden sich lediglich durch den zu berechnenden Wert innerhalb der Formel oder durch Parameter für bestimmte Situationen.
Bild 1: Für die Berechnung derart komplexer Formeln sind die finanzmathematischen Funktionen zuständig.
Voraussetzung für die Richtigkeit der Berechnungen mit allen in diesem Kapitel besprochenen Funktionen ist die Regelmäßigkeit von Zahlungen beziehungsweise Zahlungseingängen. Auch die anderen Eckdaten (zum Beispiel Zins, Zahlungszeitraum) dürfen sich während des Zahlungsverlaufes (Annuität) nicht ändern. Ausgenommen von dieser Regel sind die Cash-Flow-Berechnungen, bei denen die Zahlungen zwar regelmäßig sein müssen, aber durchaus von unterschiedlicher Höhe sein dürfen.
Tab. 1 zeigt eine übersicht die in diesem Beitrag besprochenen Funktionen, Tab. 2 die Parameter.
Hinweis
Beispiele für diese Funktionen finden Sie im Formular frmBeispiele. Die folgenden Ausführungen beschreiben jeweils die deutsche Version der Funktionen. In VBA wird die englische Version verwendet.
Deutsche Funktion |
Englische Funktion |
Beschreibung |
Zins(nper, pmt, pv[, fv[, type[, guess]]]) |
rate(nper, pmt, pv[, fv[, type[, guess]]]) |
Berechnet den Zinssatz einer Annuität für einen bestimmten Zeitraum. |
ZW(rate, nper, pmt[, pv[, type]]) |
FV(rate, nper, pmt[, pv[, type]]) |
Berechnet den zukünftigen Wert einer Annuität. |
ZinsZ(rate, per, nper, pv[, fv[, type]]) |
IPmt(rate, per, nper, pv[, fv[, type]]) |
Berechnet den Zinsanteil der (Aus)Zahlung für einen bestimmten Zeitraum einer Annuität. |
KapZ(rate, per, nper, pv[, fv[, type]]) |
PPmt(rate, per, nper, pv[, fv[, type]]) |
Berechnet den Kapitalanteil der (Aus)Zahlungen für einen bestimmten Zeitraum einer Annuität. |
RMZ(rate, nper, pv[, fv[, type]]) |
Pmt(rate, nper, pv[, fv[, type]]) |
Berechnet die (Aus)Zahlungen je Zeitraum einer Annuität. |
ZZR(rate, pmt, pv[, fv[, type]]) |
NPer(rate, pmt, pv[, fv[, type]]) |
Berechnet die Anzahl der Zeiträume einer Annuität. |
BW(rate, nper, pmt[, fv[, type]]) |
PV(rate, nper, pmt[, fv[, type]]) |
Berechnet den Barwert einer Annuität. |
GDA(cost, salvage, life, period[, factor]) |
DDB(cost, salvage, life, period[, factor]) |
Berechet die geometrisch degressive Abschreibung eines Vermögenswertes oder die Abschreibung mit einer anderen Methode. |
DIA(cost, salvage, life, period) |
SYD(cost, salvage, life, period) |
Berechet die digitale (arithmetisch degressive) Abschreibung eines Vermögenswertes. |
LIA(cost, salvage, life) |
SLN(cost, salvage, life) |
Berechet die einfache lineare Abschreibung eines Vermögenswertes. |
NPV(rate, values()) |
NPV(rate, values()) |
Berechnet den Netto-Barwert einer Investition auf Basis regelmäßiger Ein- und Auszahlungen und eines Diskontsatzes. |
IRR(values()[, guess]) |
IRR(values()[, guess]) |
Berechnet den internen Ertragssatz (Reinvestionsrate) einer Investition auf Basis regelmäßiger Ein- und Auszahlungen. |
MIRR(values(), finance_rate, reinvest_rate) |
MIRR(values(), finance_rate, reinvest_rate) |
Berechnet den modifizierten internen Ertragssatz einer Investition auf Basis regelmäßiger Ein- und Auszahlungen mit unterschiedlichen Zinssätzen. |
Tab. 1: übersicht der finanzmathematischen Funktionen
Die folgenden Funktionen bieten verschiedene Möglichkeiten für die Berechnung von Annuitäten.
Die Funktion Zins()
Bild 2: In der Beispieldatenbank können Sie alle hier beschriebenen Funktionen mit eigenen Parameterwerten testen.
Die Zins()-Funktion berechnet den Zinssatz einer Annuität, also beispielsweise eines Kredites oder einer Spareinlage für einen bestimmten Zahlungszeitraum.
Parameter |
Datentyp |
Beschreibung |
nper |
Double |
Anzahl der Zahlungszeiträume für die Annuität. Möchten Sie beispielsweise einen Kredit mit einer Laufzeit von fünf Jahren bei monatlicher Zahlung berechnen, müssen Sie mit dem Wert 60 (5 x 12 Monate) rechnen. |
per |
Double |
Verweis auf einen bestimmten Zahlungszeitraum. Muss im Bereich zwischen 1 und nper liegen. |
pmt |
Double |
Zahlung je Zeitraum |
pv |
Double |
Barwert (aktueller Wert) einer Folge zukünftiger Ein- beziehungsweise Auszahlungen |
fv |
Variant |
Endwert einer Folge zukünftiger Ein- bzw. Auszahlungen. Dabei handelt es sich um den Kontostand, der am Ende des letzten Zahlungszeitraumes erreicht sein soll. Dieser Parameter ist optional, als Standardwert wird 0 angenommen. |
type |
Variant |
Fälligkeit der Zahlung. Bei 0 ist die Zahlung am Ende, bei 1 zu Beginn eines Zahlungszeitraums fällig. Dieser Parameter ist optional, als Standardwert wird 0 angenommen. |
guess |
Variant |
Sowohl die Funktion Rate() als auch IRR() verwendet diesen Wert als Startwert zur iterativen Berechnung des Zinssatzes. Beide Funktionen wiederholen die Berechnung so lange, bis das Ergebnis auf fünf Stellen hinter dem Komma genau ist. Kann nach 20 Versuchen kein Ergebnis gefunden werden, brechen die Funktionen die Berechnung mit einem Fehler ab. Versuchen Sie in diesem Falle einen anderen Startwert. Dieser Parameter ist optional, als Standardwert wird 0,1 (10 %) angenommen. |
rate |
Double |
Zinssatz pro Zeitraum in Prozent. Haben Sie für einen Kredit einen Zinssatz von 6 % p. A. und monatliche Zahlungen vereinbart, beträgt der Zinssatz pro Monat 0,005 (0,5 %). |
cost |
Double |
Anschaffungskosten eines Vermögenswertes |
salvage |
Double |
Wert eines Vermögenswertes am Ende der Nutzungsdauer |
life |
Double |
Länge der Nutzungsdauer eines Vermögenswertes. Die Maßeinheit muss die Gleiche sein wie für den Parameter period. |
period |
Double Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ... den kompletten Artikel im PDF-Format mit Beispieldatenbank diesen und alle anderen Artikel mit dem Jahresabo |