Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Osterformel
#1
Question 
Hallo zusammen,

gibt es vielleicht jemanden der mir folgende Formel erklären könnte? Ich würde gerne den genauen Berechnungsweg verstehen.

=DATUM($F2;3;28)+REST(24-REST($F2;19)*10,63;29)-REST(KÜRZEN($F2*5/4)+REST(24-REST($F2;19)*10,63;29)+1;7)

Mit freundlichen Grüßen Oliver
to top
#2
Hallo,

ist zwar nicht genau die gleiche Formel aber vielleicht hilft das ein wenig weiter:

http://www.excelformeln.de/formeln.html?welcher=3
https://de.wikipedia.org/wiki/Osterdatum...errechnung
Gruß
Peter
to top
#3
Auch Hallo!
Ja, die Formelkünstler nötigen mir Hochachtung ab!
Ich persönlich halte es eher mit Lichtenberg (überarbeitete Gauß-Formel):

http://de.wikipedia.org/wiki/Gau%C3%9Fsc...sterformel

Ich habe mir daraus eine VBA-Funktion geschrieben, die für mich leichter nachvollziehbar ist:
Code:
Function Ostersonntag(ByVal j As Integer) As Date
' Ergänzte Gauß-Formel nach Heiner Lichtenberg (1997)
' http://de.wikipedia.org/wiki/Gau%C3%9Fsche_Osterformel#Eine_erg.C3.A4nzte_Osterformel

' Variablenbedeutung
' x(1) = Säkularzahl
' x(2) = säkulare Mondschaltung
' x(3) = säkulare Sonnenschaltung
' x(4) = Mondparameter
' x(5) = Keim für ersten Frühlingsvollmond
' x(6) = kalendarische Korrekturgröße
' x(7) = Ostergrenze
' x(8) = erster Sonntag im März
' x(9) = Osterentfernung in Tagen
' x(10) = Datum des Ostersonntags als Märzdatum (32. März = 1. April usw.)

Dim x(1 To 10) As Long
x(1) = j \ 100
x(2) = 15 + (3 * x(1) + 3) \ 4 - (8 * x(1) + 13) \ 25
x(3) = 2 - (3 * x(1) + 3) \ 4
x(4) = j Mod 19
x(5) = (19 * x(4) + x(2)) Mod 30
x(6) = (x(5) + x(4) \ 11) \ 29
x(7) = 21 + x(5) - x(6)
x(8) = 7 - (j + j \ 4 + x(3)) Mod 7
x(9) = 7 - (x(7) - x(8)) Mod 7
x(10) = x(7) + x(9)
If x(10) <= 31 Then
    Ostersonntag = j & "/03/" & x(10)
Else
    Ostersonntag = j & "/04/" & x(10) - 31
End If
End Function

Ergibt:

Tabelle1

AB
1201505.04.2015
Formeln der Tabelle
ZelleFormel
B1=Ostersonntag(A1)

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Gruß, Ralf
to top
#4
Hallo,

erstmal danke für das nette Beispiel, bin zwar kein VBA Spezi aber zumindest hilft es mir etwas dabei den Rechnungsweg zu verstehen...

Mit freundlichen Grüßen Oliver
to top
#5
Hallo,

hier noch eine Funktion:

Public Function Ostern(Yr As Integer)
Dim d As Integer
d = (((255 - 11 * (Yr Mod 19)) - 21) Mod 30) + 21
Ostern = DateSerial(Yr, 3, 1) + d + (d > 48) + 6 - ((Yr + Yr \ 4 + d + (d > 48) + 1) Mod 7)
End Function

Keine Ahnung mehr wo ich die herhabe und m.W. rechnet die Funktion auch nur bis 2099 korrekt.
Gruß
Peter
to top
#6
Hi Peter,

(27.01.2015, 09:42)Peter schrieb: Keine Ahnung mehr wo ich die herhabe und m.W. rechnet die Funktion auch nur bis 2099 korrekt.

da muß ich leider sagen:
nach 2099 ist es mir dann auch egal.
Gruß Ralf

?mage

Die deutsche Rechtschreibung ist Freeware, d.h. du kannst sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, deswegen darfst du sie nicht verändern oder in veränderter Form veröffentlichen.
to top
#7
Danke für die Formel Peter,

und ja, nach 2099 dürfte es kaum von Interesse sein für die hier Anwesenden, das Computer-Zeitalter entwickelt sich so rasend schnell, wer weiß wie wir es in 20 Jahren berechnen und ob es Excel dann überhaupt noch gibt... 26



Gruß Oliver
to top
#8
Hi!
Mal ein böser Kommentar meinerseits:
Wer weiß, ob dann noch jemand weiß, was Ostern ist ... 21
(Zumindest meinen ja manche in Dresden, dass sich das schon früher erledigt)

Gruß, Ralf
to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste