Technisches Eintrittsalter

18/11/2008 - 14:32 von Merwed | Report spam
Für Versicherungsvertràge entspricht das "Technische Eintrittsalter" nicht
immer dem Alter der Versicherten Person zum Zeitpunkt des Vertragsbeginns.
Tatsàchlich gibt es mehrere gàngige Verfahren zur Berechnung des
Eintrittsalters (http://de.wikipedia.org/wiki/Eintrittsalter). Bei dem mir
vorliegenden Fall wird aber keines der Verfahren verwendet - am ehesten ist
es eine Abwandlung des Verfahrens "Geburtsdatum mit Karenz". Um das korrekte
Eintrittsalter zu berechnen habe ich (als Prototyp) eine VBA-Funktion mit
Excel geschrieben. Ich habe das Gefühl, dass sich diese dramatisch
vereinfachen làßt, komme aber einfach nicht drauf. Hat jemand Lust, diese
Nuss zu knacken? Schön wàre es, wenn die resultierende Funktion spàter
bequem in ein SQL-Statement passt...

Public Function Eintrittsalter(Geburtstag As Date, Beginn As Date) As
Integer
Dim GebNorm As Date
Dim BegNorm As Date

GebNorm = Geburtstag - Day(Geburtstag) + 1
BegNorm = Beginn - Day(Beginn) + 1

Dim JDiff As Integer
JDiff = Year(BegNorm) - Year(GebNorm)

Dim Rest As Integer
Rest = (Month(BegNorm) - Month(GebNorm)) Mod 12
If Rest < 0 Then
Rest = Rest + 12
End If

Dim JKorr As Integer
JKorr = JDiff
If Rest < 7 Then
JKorr = JDiff - 1
End If

Dim Bezug As Date
Bezug = DateAdd("yyyy", JDiff, GebNorm)

If Bezug > BegNorm Then
Eintrittsalter = JKorr
Else
Eintrittsalter = JKorr + 1
End If

End Function

Kommentar:
Die Eintrittsalterberechnung erhàlt als Parameter das geburtsdatum und das
Beginndatum des Versicherungsvertrages. Von diesen Datumswerten sind nur
Monat und Jahr interessant, der Tag wird ignoriert (Variable xxxNorm). Als
Eintrittsalter wird zunàchst die Differenz aus Beginnjahr und Geburtsjahr
angenommen. Dieser Wert wird zweimal korrigiert: Liegen GebNorm und BegNorm
weniger als 7 Monate auseinander, wird das Eintrittsalter dekrementiert. Hat
die Versicherte Person ihren geburtstag in diesem Jahr noch vor sich
(Bezug), dann wird das Eintrittsalter inkrementiert.

Die Funktion selbst arbeitet getestet korrekt - Diskrepanzen zum Kommentar
sind Fehler im Kommentar.

Hier die Testdaten:
29.07.1990 10.03.2008 18
01.10.1988 06.01.2005 16
16.03.1973 08.12.1994 22
20.10.1987 26.08.2001 14
29.02.1984 15.01.2002 18
16.04.1971 05.11.2008 38
07.10.1983 09.06.2003 20
11.10.1987 05.06.1993 6
08.03.1977 24.08.1993 16
04.07.1975 04.01.2004 28
01.11.1984 13.10.1999 15
27.03.1978 29.06.1997 19
27.12.1971 05.08.2002 31
23.08.1990 06.05.2009 19
02.11.1985 18.01.2005 19
10.07.1970 04.07.1992 22
12.04.1979 13.10.1995 16
26.09.1970 07.07.2008 38
06.05.1983 10.02.2003 20
01.07.1983 08.05.2001 18
12.11.1979 10.08.2006 27

Viele Grüße

xpost2 m.p.d.excel und m.p.d.vb, fup2 m.p.d.vb
 

Lesen sie die antworten

#1 Andreas Killer
18/11/2008 - 18:57 | Warnen spam
Merwed schrieb:

Kommentar:


...
Die Funktion selbst arbeitet getestet korrekt - Diskrepanzen zum Kommentar
sind Fehler im Kommentar.


Deine function ist perfekt!

Denn nach Deinem Kommentar kommen da in jedem Fall und je nach
Interpretation andere Werte zustande.

Andreas.

Ähnliche fragen