Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zinsberechnung

183 views
Skip to first unread message

Walter Sieverling

unread,
Feb 8, 2001, 1:51:44 AM2/8/01
to
Hallo NG
Bin heute irgendwie von der Rolle
Ein Kollege bat mich, ihm auf die "schnelle" eine Zinsberechnung für sein
Sparbuch zu basteln.
Vielleicht hat ja jemand was fertiges

Buchungsdatum Zugang Abgang Gesamt
01.01.2001 15000,---
02.01.2001 1000,-- 16000,---
12.01.2001 500,-- 15500,---
01.02.2001 1500,-- 17000,---

Wie errechne ich unterjährig bei EIn/Auszahlungen die Zinsen ?
Vielen Dank für "schnelle " Hilfe
Walter


Ulrich Thanscheidt

unread,
Feb 8, 2001, 2:19:55 AM2/8/01
to
Hallo Walter!
Bin zwar kein Bänker, würde aber folgendes vorschlagen:
ZinsenZeitraum = Gesamt*Zinssatz*(aktuellesDatum-vorherigesDatum)/360 oder
365.
Und dann alle "Einzelzinsen" addieren.
--
Bis die Tage

Uli


Walter Sieverling <Walter.S...@de.bosch.com> schrieb in im
Newsbeitrag: 95tfm0$79i$1...@proxy.fe.internet.bosch.de...

Jürgen Westerkamp

unread,
Feb 8, 2001, 2:22:41 AM2/8/01
to
Hallo Walter,
meines Wissens werden unterjährige Zinsen nach der 360-Tage-Methode
berechnet.
Ich glaube, es gibt in Excel sogar eine Fuktion dafür.
Gruß
Jürgen

Walter Sieverling <Walter.S...@de.bosch.com> schrieb im Beitrag
<95tfm0$79i$1...@proxy.fe.internet.bosch.de>...

Dr. Eckehard Pfeifer

unread,
Feb 8, 2001, 4:29:26 AM2/8/01
to
Hallo, Walter,
mit Tage360 bestimmst Du die Zinstage vom jeweiligen Vorgangs-Datum bis
Jahresende.
Mit Kapital*Zinstage/100 bestimmst Du die sogenannten Zinszahlen (Runden auf
0 Stellen, positiv bei Ein-, negativ bei Auszahlungen). Von Bank zu Bank
verschieden wird nur Kapital ohne Pfennige beruecksichtigt.
Summe der Zinszahlen geteilt durch Zinsdivisor (=Zinsfuss/360) ergibt die
Zinsen.

--
Mit freundlichen Grüßen
Eckehard Pfeifer

VBA-WorkShops in Dresden, Info unter www.dr-e-pfeifer.de
Ein Blick lohnt sich immer: www.vba-magazin.de

"Walter Sieverling" <Walter.S...@de.bosch.com> schrieb im Newsbeitrag
news:95tfm0$79i$1...@proxy.fe.internet.bosch.de...

Ruben Becker

unread,
Feb 8, 2001, 11:32:38 AM2/8/01
to
> meines Wissens werden unterjährige Zinsen nach der
360-Tage-Methode
> berechnet.
> Ich glaube, es gibt in Excel sogar eine Fuktion dafür.

Jou! Sie heißt Tage360(Startdatum;Enddatum)

HTH
--
Ruben K. Becker
http://home.t-online.de/home/ruben.becker

Renzo Lazzarini

unread,
Feb 9, 2001, 1:32:33 AM2/9/01
to
Hallo Walter

Die Formel wie sie von Eckehard beschrieben ist, kann auch in eine
benutzerdefinierte Funktion eingebaut werden. Die beiden Funktionen heissen
in meinem Beispiel =ZinsNummer(StartDatum,EndDatum,Kapital) und
=ZinsErtrag(ZinsNummer,ZinsSatz). Baue sie mit dem VBA Editor (mit ALT+F11
starten) in ein Programm Modul ein.

'*** Von da weg in ein Programm-modul kopieren.
Function ZinsNummer(StartDat, EndDat, Kapital As Double) As Integer
ZinsNummer = WorksheetFunction.Days360(StartDat, EndDat, True) * Kapital
/ 100
End Function

Function ZinsErtrag(ZinsNr As Integer, ZinsSatz As Double) As Double
ZinsErtrag = ZinsNr / 360 * ZinsSatz
End Function

'*** bis da kopieren

Unten dein Beispiel unter Anwendung der benutzerdefinierten Funktionen unter
der
Annahme, dass der Zins 5% beträgt -> 2.Parameter in ZinsErtrag.

Kleiner Tip: Wenn du die Formel "=ZinsNummer( " bis zur Klammer eingegeben
hast,
kannst du mit STRG+Shift+A eine Hilfestellung aus der Funktion erhalten,
welche dir
die Namen der erwarteten Parameter anzeigt.

A B C D
E
1 Buchungsdatum Zugang Abgang Gesamt
2 01.01.2001 15000,---
3 02.01.2001 1000,-- 16000,---
=ZinsNummer(A2;A3;D1)
4 12.01.2001 500,-- 15500,---
=ZinsNummer(A3;A4;D2)
5 01.02.2001 1500,-- 17000,---
=ZinsNummer(A4;A5;D4)
6
=Summe(E3:E5)
7
=ZinsErtrag(E6;5)

Gruss aus Zürich, Renzo

"Walter Sieverling" <Walter.S...@de.bosch.com> schrieb im Newsbeitrag
news:95tfm0$79i$1...@proxy.fe.internet.bosch.de...

Renzo Lazzarini

unread,
Feb 9, 2001, 1:42:57 AM2/9/01
to
Hallo NG

Die Formeln für die Zinsnummern, die ich im Beispiel in Spalte E eingetragen
habe sind mir
leider durch das Outlook-Programm umgebrochen worden. Ich hoffe ihr kommt
klar, sonst
sende ich auf Anfrage eine Demomappe.

Gruss Renzo


Dr. Eckehard Pfeifer

unread,
Feb 10, 2001, 7:27:10 AM2/10/01
to
Hallo, Renzo, gut waere noch ein Runden auf 2 Stellen in deinem Code.

Renzo Lazzarini

unread,
Feb 10, 2001, 8:35:55 AM2/10/01
to
Hallo Eckehard

Ein guter Vorschlag. Beachte dass die Rundungsart ein optionaler Parameter
in der Formel darstellt und ohne Angabe von 1 für die Rundung auf den
100-erdstel bzw. mit 5 Rundung auf 5 Pfenning die Funktion immer noch die
ungerundeten Werte zurückgibt.

Im folgenden den Code

'*** Von da weg in ein Programm-modul kopieren.
Function ZinsNummer(StartDat, EndDat, Kapital As Double) As Integer
ZinsNummer = WorksheetFunction.Days360(StartDat, EndDat, True) * Kapital
/ 100
End Function

Function ZinsErtrag(ZinsNr As Integer, ZinsSatz As Double, Optional
Rundungsart As Integer) As Double
'Rundungsart 1 ---> Runden auf 0.01
'Rundungsart 5 ---> Runden auf 0.05
'Ohne Parameter wird nicht gerundet
ze = ZinsNr / 360 * ZinsSatz
Select Case Rundungsart
Case 1
ZinsErtrag = Int(ze * 100 + 0.5) / 100
Case 5
ZinsErtrag = Int(ze * 20 + 0.5) / 20
Case Else
ZinsErtrag = ze
End Select
End Function

'*** bis da kopieren


Gruss aus Zürich, Renzo

PS

Um die Codebeispiele so einfach wie möglich zu halten, verzichte ich in der
Regel in den Beispielen in dieser NG auf den Einbau von Error- und
Crash-Handlern, Klassenbibliotheken und dergleichen.


"Dr. Eckehard Pfeifer" <pri...@dr-e-pfeifer.de> schrieb im Newsbeitrag
news:uzM0ny1kAHA.1076@tkmsftngp02...

0 new messages