Office-Blog

Power BI Desktop: Warum eigene Kalendertabellen besser sind

05.07.2024   Dominik Petri

DAX stellt eine Vielzahl von Funktionen zur Verfügung, mit denen ich zeitbezogene Analysen durchführen kann. Diese sogenannten Time Intelligence-Funktionen haben eines gemeinsam: zur korrekten Berechnung wird eine Kalendertabelle gebraucht. Wie ich einem Datenmodell in Power BI Desktop eine solche Kalendertabelle hinzufüge, zeige ich in diesem Blogbeitrag.

Die Nachteile einer automatischen Kalendertabelle

Power BI Desktop erzeugt zwar standardmäßig Kalendertabellen, doch diese haben mehrere Nachteile:

  • Sie sind nicht anpassbar – sie enthalten nur Jahre, Quartale, Monate und Tage.
  • Sie blähen das Datenmodell unnötig auf, weil für jedes(!) Feld vom Typ Datum bzw. Datum/Uhrzeit eine eigene Tabelle erstellt wird – egal, ob ich sie benötige oder nicht.

Aus diesem Grunde ist es besser, eine eigene Kalendertabelle zu erzeugen.

Mehr Informationen zu diesen Tabellen gibt es hier: Automatische Angabe von Datum/Uhrzeit in Power BI Desktop – Power BI | Microsoft Learn

1) Die automatischen Kalendertabellen ausschalten

Um aus meinem Power BI-Bericht die Kalendertabellen zu löschen, entferne ich das entsprechende Kontrollkästchen aus den Optionen für die aktuelle PBIX-Datei.

Den Automatismus deaktivieren

Ab sofort in Power BI Desktop keine automatischen Kalendertabellen mehr

TIPP: Damit ich auch in künftigen Power BI-Berichten keine automatischen Kalendertabellen mehr erhalte, deaktiviere ich das entsprechende Kontrollkästchen in den globalen Optionen.

2) In Power Query eine eigene Kalendertabelle erstellen

Nun lege ich eine eigene Kalendertabelle an, die automatisch den korrekten Zeitraum abdeckt und keine weiteren manuellen Anpassungen mehr erfordert. Das erledige ich in Power Query wie folgt:

  • Über Start > Daten abrufen erzeuge ich zuerst eine leere Abfrage.
  • Danach öffne ich im Power Query Editor diese Abfrage über die Registerkarte Ansicht im erweiterten Editor.
  • Den Inhalt des erweiterten Editors ersetze ich mit folgendem Code > Download der TXT-Datei.
Den vorgegebenen Code überschreiben

Den vorgegebenen Code überschreiben

  • In Zeile 5 ersetze ich Tabelle[Spalte] durch die Spalte, für die ich einen Kalender benötige, z. B. Transaktionen[Bestelldatum]).
  • Zum Schluss benenne ich diese Abfrage in Kalender um.

Fazit

  • Mein Datenmodell enthält somit eine Kalendertabelle, die am 1. Januar des Jahres beginnt, in dem das älteste Datum der Spalte Bestelldatum liegt.
  • Der Kalender endet automatisch am 31. Dezember des laufenden Jahres.
  • Bei jeder Aktualisierung meiner Abfragen werden Beginn und Ende des Kalenders automatisch ermittelt. Manuelle Anpassungen sind ab sofort überflüssig.

Über den Autor

Dominik Petri

- Dipl.-Betriebswirt mit 20 Jahren Berufserfahrung in Großbanken
- Chartered Financial Analyst® und Spezialist für Business Intelligence (BI)
- Zertifizierter Office-Trainer mit den Schwerpunkten Excel und VBA
- Spezialist der ersten Stunde für Power BI mit Excel
- Gründer der offiziellen Microsoft Power BI User Group Frankfurt
- Unterstützt Firmen beim Einführen und Verwenden der BI-Tools von Microsoft
- Projekterfahrener Excel-Berater, VBA-Programmierer für Analysetools
- Autor für Microsoft Press, dpunkt.verlag und »Modernes Reporting mit Excel«