Z.B:
Dim leapYear As Boolean
If Year(Ende) / 4 - Round(Year(Ende) / 4) = 0 Then 'weitere Bedingungen fehlen
leapYear = True
End If
reicht nicht ganz aus...
Vielen Dank
Sebastian
Function Schaltjahr(Jahreszahl) As Boolean
If (Jahreszahl Mod 4) = 0 And (Jahreszahl Mod 100) <> 0 Or _
((Jahreszahl Mod 400) = 0) Then
Schaltjahr = True
Else
Schaltjahr = False
End If
End Function
Function sj(p_year As Integer) As Boolean
If p_year Mod 400 = 0 Then
'Regel 1 -> Schaltjahr
sj = True
Else
If p_year Mod 100 = 0 Then
'Regel 2 -> kein Schaltjahr
sj = False
Else
If p_year Mod 4 = 0 Then
'Regel 3 -> Schaltjahr
sj = True
Else
'Regel 4 -> kein Schaltjahr
sj = False
End If
End If
End If
End Function
Um ein Schaltjahr in VBA zu ermitteln, kannst Du eine Funktion erstellen, die die Regeln für Schaltjahre berücksichtigt. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
Function Schaltjahr(Jahreszahl As Integer) As Boolean
If (Jahreszahl Mod 4) = 0 And (Jahreszahl Mod 100) <> 0 Or _
(Jahreszahl Mod 400) = 0 Then
Schaltjahr = True
Else
Schaltjahr = False
End If
End Function
Jetzt kannst Du die Funktion Schaltjahr
in Deinem Excel-Arbeitsblatt verwenden, um zu überprüfen, ob ein Jahr ein Schaltjahr ist.
Falsches Jahr übergeben
Funktion gibt falsche Werte zurück
Eine alternative Methode, um Schaltjahre zu überprüfen, ist die Verwendung der DateSerial
-Funktion. Hier ein Beispiel:
Function IstSchaltjahr(Start As Date) As Boolean
If DateSerial(Year(Start) + 1, 1, 1) - DateSerial(Year(Start), 1, 1) = 366 Then
IstSchaltjahr = True
Else
IstSchaltjahr = False
End If
End Function
Diese Methode prüft, ob der Unterschied zwischen dem 1. Januar des aktuellen Jahres und dem 1. Januar des nächsten Jahres 366 Tage beträgt.
Hier sind einige Beispiele, wie Du die Schaltjahr-Funktion in Excel verwenden kannst:
Um das Jahr 2024 zu überprüfen:
Dim istLeap As Boolean
istLeap = Schaltjahr(2024) ' Gibt True zurück
Um eine Liste von Jahren zu überprüfen:
Dim jahr As Integer
For jahr = 2000 To 2025
If Schaltjahr(jahr) Then
Debug.Print jahr & " ist ein Schaltjahr."
End If
Next jahr
1. Wie funktioniert die Schaltjahr-Berechnung?
Die Berechnung basiert auf den Regeln, dass ein Jahr ein Schaltjahr ist, wenn es durch 4 teilbar ist, nicht durch 100, es sei denn, es ist durch 400 teilbar.
2. Kann ich die Funktion in Excel-Formeln verwenden?
Ja, Du kannst die Funktion direkt in Excel-Zellen verwenden, indem Du =Schaltjahr(Jahr)
eingibst, wobei Jahr
die zu prüfende Jahreszahl ist.
3. Welche Excel-Version benötige ich für die Nutzung von VBA?
VBA ist in den meisten Excel-Versionen verfügbar, einschließlich Excel 2010, 2013, 2016 und 365.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen