Einführung "VBA mit Microsoft Office"

Code Snippet "VBA allgemein"

Ist ein bestimmtes Jahr ein Schaltjahr?

Sub procUebKniffel_Schaltjahr()
  Dim intJahrzahl As Integer
  Dim strEingabe As String
  strEingabe = ""
  
  'Eingabe solange wiederholen, bis numerisch und zwischen 0 und 3000
  Do
    strEingabe = InputBox("Bitte geben Sie eine Jahrzahl zwischen 0 und 3000 ein!")
    If IsNumeric(strEingabe) Then
      intJahrzahl = strEingabe
    Else
      intJahrzahl = -1
    End If
  Loop Until intJahrzahl >= 0 And intJahrzahl <= 3000
  
  'Schaltjahr?
  If intJahrzahl Mod 4 > 0 Then
    'Nicht durch 4 teilbar
    MsgBox (intJahrzahl & " ist kein Schaltjahr.")
  ElseIf intJahrzahl Mod 100 > 0 Then
    'Durch 4 teilbar, aber nicht durch 100 teilbar
    MsgBox (intJahrzahl & " ist ein Schaltjahr.")
  ElseIf intJahrzahl Mod 1000 > 0 Then
    'Durch 100 teilbar aber nicht durch 1000 teilbar
    MsgBox (intJahrzahl & " ist kein Schaltjahr.")
  Else
    'Durch 1000 teilbar
    MsgBox (intJahrzahl & " ist ein Schaltjahr.")
  End If
End Sub