Eeuwig durende kalender

De formules

Nr Uitleg Formule
1 bepaalt of WJ een schrikkeljaar is
Ja : UK01 = 1
Nee : UK01 = 0
ALS MODULUS(WJ, 4) > 0
DAN UK01 = 0
ANDERS ALS MODULUS(WJ, 100) > 0
DAN UK01 = 1
ANDERS ALS MODULUS(WJ, 400) > 0
DAN UK01 = 0
ANDERS UK01 = 1
2 bepaalt het dichtstbijzijnde jaartal in de geschiedenis
dat deelbaar is door 400 (incl. huidig jaartal)
UK02 = GEHEEL(WJ / 400) * 400
3 t/m 6 bepaalt vanaf UK02 (incl) tot aan WJ (excl)
3 hoeveel jaren er zijn UK03 = WJ – UK02
4 hoeveel dagen er zijn (excl. schrikkeldagen) UK04 = UK03 * 365
5 hoeveel schrikkeldagen er zijn (incl. eeuwgetallen) UK05 = GEHEEL((UK03 + 3) / 4)
6 hoeveel niet-schrikkel eeuwgetallen er zijn UK06 = GEHEEL((UK03 – 1) / 100)
7 bepaalt het aantal dagen in de voorbije maanden
van het jaar met de waarde uit WJ (excl. schrikkeldagen)
UK07 = VOORBIJ[WM]
8 bepaalt of in WJ schrikkeldag al voorbij is
Ja : UK08 = 1
Nee : UK08 = 0
ALS (WM IS 1 OF WM IS 2)
DAN UK08 = 0
ANDERS UK08 = UK01
9 bepaalt het aantal dagen vanaf 1 januari van het jaar
met de waarde uit UK02 tot en met de wensdatum
UK09 = UK04 + UK05 – UK06 + UK07 + UK08 + WD
10 bepaalt de weekdag van de wensdatum UK10 = WEEKDAG[MODULUS(UK09 + 4, 7) + 1]

Legenda variabelen

Variabele Uitleg Waarde
WD Dag van de maand van de wensdatum
WM Maand van de wensdatum (getal)
WJ Jaar van de wensdatum (getal van 4 cijfers)
UKNR Bevat resultaat van een formule,
heeft bij iedere formule een ander volgnummer
VOORBIJ Tabel (array) met dagen van maanden die voorbij zijn
(zie formule 7)
VOORBIJ[1]=0
VOORBIJ[2]=31
VOORBIJ[3]=59
VOORBIJ[4]=90
VOORBIJ[5]=120
VOORBIJ[6]=151
VOORBIJ[7]=181
VOORBIJ[8]=212
VOORBIJ[9]=243
VOORBIJ[10]=273
VOORBIJ[11]=304
VOORBIJ[12]=334
WEEKDAG Tabel (array) met weekdagnamen
(zie formule 10)
WEEKDAG[1]=Maandag WEEKDAG[2]=Dinsdag WEEKDAG[3]=Woensdag
WEEKDAG[4]=Donderdag
WEEKDAG[5]=Vrijdag
WEEKDAG[6]=Zaterdag
WEEKDAG[7]=Zondag

Legenda functies

Functie Uitleg
MODULUS Geeft de restwaarde van een deling als geheel getal. Voorbeelden:
MODULUS(13, 7) = 6
MODULUS(26, 7) = 5
GEHEEL Geeft de waarde van het getal zonder breukwaarde. Voorbeelden:
GEHEEL(13 / 7) = 1
GEHEEL(26 / 7) = 3