Standardfunktionen

In Excel gibt es leider keine Formel zur Berechnung des Quartals, was leider ziemlich schade ist. Bei einem normalen Wirtschaftsjahr kann man dies noch verschmerzen, da man mittels der recht leicht merkbaren Formel 

=AUFRUNDEN(MONAT(A1)/3;0)&”. Quartal” 
=ROUNDUP(MONTH(A1)/3, 0)&”. Quartal” 

das Quartal recht einfach berechnen kann. Komplizierter wird die Sache, wenn man ein abweichendes Wirtschaftsjahr hat. Es gibt zwar auch dafür Lösungen, aber die kann man sich in meinen Augen nicht mehr auswendig merken. Lösung für dieses Problem bildet folgende Formel, die man Excel mittels VBA beibringen kann. (Zu der Lösung ohne VBA siehe hier.)

VBA

Function BerechneQuartal(datum As Date) As Integer
BerechneQuartal = Int((Month(datum) - 1) / 3) + 1
End Function

Diese VBA-Funktion BerechneQuartal nimmt ein Datum als Argument und gibt das Quartal als ganze Zahl zurück. Sie teilt das Jahr in vier Quartale, wobei Month(datum) den Monat des Datums extrahiert.

Nachdem Sie diese Funktion in einem Excel-VBA-Modul definiert haben, können Sie sie in Excel wie jede andere Funktion verwenden, z.B. =BerechneQuartal(A1), wobei A1 die Zelle mit dem Datum ist.

' Funktion zur Ermittlung des Quartals eines Datums, optional abhängig von einem Bilanzstichtag
Public Function Quartal(Datum As Date, Optional BilanzStichtag As Date = #1/1/2011#) As String
' Überprüft, ob ein gültiges Datum vorliegt (1899 wird als leere Zelle interpretiert)
If DatePart("yyyy", Datum) = 1899 Then
' Gibt einen leeren String zurück, wenn keine gültige Datumsangabe vorhanden ist
Quartal = ""
ElseIf BilanzStichtag = #1/1/2011# Then
' Standardfall: Ermittlung des Quartals basierend auf dem Datum
Quartal = DatePart("q", Datum) & ". Quartal"
Else
' Variable zur Speicherung der Monatszahlen
Dim Month1 As Integer
Dim Month2 As Integer
Month1 = Month(Datum)
Month2 = Month(BilanzStichtag)
' Berechnung des Quartals abhängig vom Bilanzstichtag
If Month1 = Month2 + 1 Then
Quartal = 1 & ". Quartal"
ElseIf Month1 > Month2 Then
Quartal = Round((Month1 + 1 - Month2) / 3, 0) & ". Quartal"
Else
Quartal = Round((Month1 + 13 - Month2) / 3, 0) & ". Quartal"
End If
End If
End Function

Erläuterung des Codes:

  • Die Funktion Quartal berechnet das Quartal eines gegebenen Datums. Optional kann ein Bilanzstichtag angegeben werden, um das Quartal relativ zu diesem Datum zu berechnen.
  • Zuerst prüft die Funktion, ob ein gültiges Datum vorliegt. Excel interpretiert eine leere Zelle als das Jahr 1899.
  • Wenn kein Bilanzstichtag angegeben ist oder der Standardwert verwendet wird, berechnet die Funktion das Quartal anhand des Datums.
  • Wenn ein Bilanzstichtag angegeben ist, erfolgt eine spezifische Berechnung, die den Monat des Datums und des Bilanzstichtags berücksichtigt, um das Quartal zu ermitteln.
  • Die Funktion gibt das Quartal als String im Format “X. Quartal” zurück.