• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Schrikkeljaar berekenen, maar hoe?

  • Onderwerp starter Onderwerp starter auxi
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

auxi

Gebruiker
Lid geworden
3 jan 2011
Berichten
70
Hallo allemaal,

wie kan mij (op weg) helpen met het volgende?

Ik ben een feestdagenbestand aan het maken maar ik kom er niet uit.
Op basis van de jaartallen (B5 t/m B77), die ik in A2 via een scroll down menu wil selecteren, wil ik in C1 (op basis van B2) zien of een jaar een schrikkeljaar is of niet.
Het lukt mij om een of andere reden niet! Wat doe ik niet?

Alvast dank voor het mee denken.

Groet Auxi
 

Bijlagen

Met MAAND(DATUM(JAAR(2000);2;29))=29 zoals nu in B2 controleer je of het maandnummer van 1 maart 1905 gelijk is aan 29.

Opmerkingen:
1. de JAAR-functie is overbodig en moet eruit. JAAR(2000) is gelijk aan 1905 namelijk.
2. je checkt of het MAANDnummer van 29 februari gelijk is aan 29.... Dat is natuurlijk NOOIT zo, en dus krijg je altijd ONWAAR als uitkomst. Maak er eens 2 van zou ik zeggen.

En let op: Excel rekent niet met datums met jaartal voor 1900.
 
Laatst bewerkt:
Met een datum in A1:
PHP:
=ALS(OF(REST(JAAR(A1);400)=0;EN(REST(JAAR(A1);4)=0;REST(JAAR(A1);100)<>0));"Ja"; "Nee")
 
Hoi edmoor,
nu heb ik bovenstaande formule gebruikt en krijg ik , met als jaartal 2000, nee als antwoord!?
Maar 2000 was een schrikkeljaar!
Raar toch!
 
Die geeft bij mij gewoon een Ja.
Zorg er wel voor dat er een datum in A1 staat en niet alleen het getal 2000.
 
Heb je #2 wel gelezen?

Als je alleen jaartal wilt checken moet de functie JAAR eruit.
 
Laat eens lopen:

Code:
Sub M_snb()
  For j = 2000 To 2020
    MsgBox DateSerial(j, 3, 0)
  Next
     
  For j = 2000 To 2020
    MsgBox IIf(Day(DateSerial(j, 3, 0)) = 29, "", "geen ") & "schrikkeljaar"
  Next
End Sub
In Excelformule:
als in A1 het jaartal.
PHP:
=IF(DAY(DATE(A1;3;0))=29;"";"geen ")& " schrikkeljaar"
 
Laatst bewerkt:
Code:
=ALS(OF(REST(B2;400)=0;EN(REST(B2;4)=0;REST(B2;100)<>0));"schrikkeljaar"; "geen schrikkeljaar")
 
Laatst bewerkt:
Als je een bekend schrikkeljaar hebt kun je het ook zo al berekenen

Code:
=ALS(REST(A1-[COLOR="#FF0000"]2000[/COLOR];4)=0;"Schrikkeljaar";"Geen schrikkeljaar")
 
Niet helemaal JVeer, deze geeft ook voor 1700, 1800, 1900 aan dat het een schrikkeljaar is. Dat zijn ze echter niet...
 
Heb de theorie even opgezocht. Dat verklaart een hoop:)

De schrikkeldag valt in de Gregoriaanse kalender op 29 februari en komt voor als het jaartal restloos deelbaar is door 4, maar niet door 100 – tenzij het jaartal restloos deelbaar door 400 is

En dat is dus letterlijk dit in een formule gegoten, zoals in de post van Senso

Code:
=ALS(OF(REST(B2;400)=0;EN(REST(B2;4)=0;REST(B2;100)<>0));"schrikkeljaar"; "geen schrikkeljaar")
 
Laatst bewerkt:
Geweldig!:thumb:

Zelden ziet men zulke diepzinnige gezichten als bij de bestudering van de spijskaart.
Emanuel Wertheimer, Duits-Oostenrijkse filosoof, 1846-1916
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan