Hi,
hier was zu der Funktion:
http://www-mmt.inf.tu-dresden.de/Docs/iis3/ASP_Docs/ref/vbs/vbscript/69.htmHab noch was direkt in LS gefunden - hier die wichtigste Passage:
(c) by Raimund Mann, 1997
Sei Y die 2-stellige Jahreszahl:
If Y < 51 Then
' Y = Y+2000
' Else
' Y=Y+1900
' End If
'Berechne den Ostersonntag für das angegebene Jahr
' nach der Methode von Butcher
a=Int(Y Mod 19)
b= Int(Y/100)
c=Int(Y Mod 100)
d=Int(b/4)
e=Int(b Mod 4)
f=Int((b+8)/25)
g=Int((b-f+1)/3)
h=Int((19*a+b-d-g+15) Mod 30)
i=Int(c/4)
k=Int(c Mod 4)
l=Int((32+2*e+2*i-h-k) Mod 7)
m=Int((a+11*h+22*l)/451)
EasterMonth =Int((h+l-7*m+114)/31) ' [3=March, 4=April]
p=Int((h+l-7*m+114) Mod 31)
EasterDay=p+1 '(date in Easter Month)
EasterDate = Cstr(EasterDay) + "." + Cstr(EasterMonth) + "."
'Basierend auf dem Ostersonntag berechne alle anderen Feiertage
'Die beweglichen Feiertage vor Ostern
'-48 Rosenmontag
FTListe("Rosenmontag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay-48)),6)
'-47 Faschingsdienstag
FTListe("Faschingsdienstag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay-47)),6)
'-46 Aschermittwoch
FTListe("Aschermittwoch") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay-46)),6)
' -3 Gründonnerstag
FTListe("Gründonnerstag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay-3)),6)
' -2 Karfreitag
FTListe("Karfreitag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay-2)),6)
'Die beweglichen Feiertage nach Ostern:
' 0 OsterSonntag
FTListe("Ostersonntag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay)),6)
'1 Ostermontag
FTListe("Ostermontag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay+1)),6)
'39 Christi Himmelfahrt (Donnerstag)
FTListe("Christi Himmelfahrt") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay+39)),6)
'49 Pfingstsonntag
FTListe("Pfingstsonntag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay+49)),6)
'50 Pfingstmontag
FTListe("Pfingstmontag") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay+50)),6)
'60 Fronleichnam (Donnerstag; in BW, BAY, HES, NRW, RPF, SAL, THÜ)
FTListe("Fronleichnam") = Left$(Cstr(Datenumber(Y,EasterMonth,EasterDay+60)),6)
'Buß- und Bettag ist der 3 Mittwoch im November
'mit welchem Wochentag beginnt der November
woTag = Weekday(Datenumber(Y,11,1))
'Buß- und Bettag ist dann
If woTag = 4 Then
FTListe("Buß- und Bettag") = Left$(Cstr(Datenumber(Y,11,15)),6)
Elseif woTag > 4 Then
FTListe("Buß- und Bettag") = Left$(Cstr(Datenumber(Y,11,15+(7-(woTag-4)))),6)
Elseif woTag < 4 Then
FTListe("Buß- und Bettag") = Left$(Cstr(Datenumber(Y,11,15+(4-woTag))),6)
End If