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.