FeestDagen |
Hoe werkt het sjabloon FeestDagen ?
Tip
Ten behoeve van het opstellen van een kalender wil je inzicht in de data waarop de feestdagen van het betreffende jaar vallen. Hiervoor zijn formules te geven. Een aantal feestdagen vallen elk jaar op dezelfde datum. Deze datum hoeft niet te worden bepaald en staat ieder jaar "vast". Daarnaast zijn er feestdagen die per jaar verschillen en waarvan hier een uitwerking wordt gegeven om deze voor een willekeurig jaar te bepalen. De uitwerking van het bepalen van de feestdagen in een willekeurig jaar is terug te vinden in de webwinkel van TemplateBuilding.
Veel van de feestdagen zijn af te leiden van "Pasen". Voor het bepalen van paasdag kan een Excelformule worden gebruikt. Hier is gekozen voor het gebruik van een Vba functie. Zie voor de broncode hieronder.
Function BepaalPasen(Jaar As Integer) As Date
Dim y, m, d As Integer
Dim G, i, J, C, H, L As Integer
Dim E As Date
G = Jaar Mod 19
C = Int(Jaar / 100)
H = (C - Int(C / 4) - Int((8 * C + 13) / 25) + 19 * G + 15) Mod 30
i = H - Int((H / 28)) * (1 - Int((H / 28)) * Int((29 / (H + 1))) * Int(((21 - G) / 11)))
J = (Jaar + Int(Jaar / 4) + i + 2 - C + Int(C / 4)) Mod 7
L = i - J
m = 3 + Int((L + 40) / 44)
d = L + 28 - 31 * Int((m / 4))
y = Jaar
' E is de datum waarop het volle maan is.
E = DateSerial(y, m, d)
' Bepaal de volgende zondag
While Weekday(E) > 1
E = E + 1
Wend
BepaalPasen = E
End Function
Zodra je de datum hebt bepaald waarop de eerste paasdag in een jaar valt, kun je hier een aantal andere feestdagen van afleiden.
Eerste paasdag | =BepaalPasen() |
Tweede paasdag | =(Eerste Paasdag) + 1 |
Eerste pinksterdag | =(Eerste Paasdag) + 49 |
Tweede pinksterdag | =(Eerste Pinksterdag) + 1 |
Hemelvaart | =(Eerste Pinksterdag) - 8 |
Eerste kerstdag | =DATUM(;12;25) |
Tweede kerstdag | =DATUM(;12;26) |
Nieuwjaarsdag | =DATUM(;1;1) |
De waarden uit de berekeningen zijn afhankelijk van het opgegeven jaartal. De resultaten van de berekening kunnen worden gebruikt om in een eigengemaakte kalender op te nemen.
Heb je nog vragen, neem dan gerust contact met ons op.