Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 4/2006.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

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

Finanzmathematische Funktionen

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.

Einführung

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.

Abb. 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

Annuitätenrechnung

Die folgenden Funktionen bieten verschiedene Möglichkeiten für die Berechnung von Annuitäten.

Die Funktion Zins()

Abb. 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

Zeitraum, für den die Abschreibung berechnet wird. Die Maßeinheit muss die Gleiche sein wie für den Parameter life.

factor

Variant

Faktor, um den der Abschreibungswert vermindert wird. Dieser Parameter ist optional, als Standardwert wird 2 (geometrisch degressive Methode) angenommen.

finance_rate

Double

Zinssatz, der bei der Finanzierung einer Anlage bezahlt werden muss.

reinvest_rate

Double

Zinssatz, der bei erneuter Anlage von Kapital erzielt werden kann.

values()

Double (Array)

Datenfeld, mit dem Cash-Flow-Werte übergeben werden. Dieses Datenfeld muss bei den Funktionen IRR() und MIRR() mindestens einen negativen (Zahlungsausgang) und einen positiven (Zahlungseingang) Wert enthalten.

Tab. 2: Die in den finanzmathematischen Funktionen verwendeten Parameter.

Die Syntax

Zins(nper, pmt, pv[, fv[, type[, guess]]])

erscheint zunächst recht kompliziert, muss wegen der drei optionalen Parameter aber nur selten vollständig eingegeben werden.

Haben Sie beispielsweise für ein Produkt, das EUR 10.000,- kostet, eine Ratenzahlung vereinbart, bei der Sie über einen Zeitraum von vier Jahren monatlich EUR 234,85 zu zahlen haben, beträgt der monatliche Zinssatz 0,5 %. Die für die Berechnung notwendigen Parameter werden der Funktion mit dem Ausdruck

Zins(48; -234,85; 10.000)

übergeben. Der Parameter nper für die Laufzeit des Kredits wurde der Länge der Zahlungszeiträume angepasst und daher in 48 Monate umgerechnet.

Die monatliche Zahlung pmt wird, wie alle Zahlungsausgänge, durch negative Zahlen dargestellt, während der Barwert pv, also der aktuelle Wert des Kredits als positive Zahl übergeben wird.

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.