Von der Wiege bis zur Bahre: Formulare, Formulare. Einerseits zwingen uns immer mehr Vorschriften dazu Systeme, Prozesse oder auch Auswertungen zu dokumentieren. Andererseits hilft es dem Team oder auch einem selbst Gedanken nachzuvollziehen. Auch noch einen Monat später.

Vorweg: Was ist mit Power BI? Was ist mit Power Query?

Power Query lädt und transformiert Daten. Die Anforderungen an eine Dokumentation ist eine andere als die Dokumentation von Measures oder berechneten Spalten. In Power BI kann etwas besser dokumentieren - etwas.

In diesem Artikel beschränke ich mich auf Excel Power Pivot. Die anderen Produkte betrachten wir in zukünftigen Artikeln.

Der Königsweg?

Bevor du am Ende enttäuscht bist: Ich habe keinen. Es gibt viele Möglichkeiten, die du für dich, dein Team oder dein Unternehmen verwenden kannst – und sicherlich anpassen musst.

Was soll dokumentiert werden

Fragt man zu diesem Thema drei Leute erhält man mindestens vier Antworten. Beschränken wir uns auf folgende Objekte, die zu beschreiben sind:

  • Tabellen
  • Spalten
  • Berechnete Spalten
  • Measures

Beziehungen zwischen Tabellen könnten man ebenfalls aufführen. Mir genügt dazu aber das Modell in der Diagrammsicht.

Kommentare in einer DAX-Formel

Prinzipiell bin ich kein Freund von externer Dokumentation (ich höre schon den Aufschrei). Das Problem ist, dass externe Dokumentation fast immer veraltet und mit dem IST-Stand nichts mehr zu tun hat. Vorausgesetzt, man findet sie überhaupt, wenn man sie braucht. Kommentare direkt im Quellcode oder im hier beschriebenen Fall direkt in der DAX-Formel geht nicht verloren.

In DAX funktionieren prinzipiell einzeilige und mehrzeilige Kommentare. Die einzeiligen werden mit // eingeführt. Mehrzeilige Kommentare werden mit /* geöffnet und mit */ abgeschlossen. Leider hat Excel Power Pivot je nach Version Bugs bei Kommentaren. Einzeilige Kommentare gehen manchmal gar nicht oder nur an manchen Stellen nicht. Ich verwende daher immer die mehrzeilige Variante:

Seltsam ist hier leider auch, dass man Kommentare nicht direkt hinter dem Doppelpunkt platzieren kann, sondern erst innerhalb der Funktion. Vermutlich auch ein Bug.

Kommentare im Berechnungsbereich

Im Berechnungsbereich, also dem Bereich, in dem Measures definiert werden, kann in einer Zelle einfach Text geschrieben werden. Damit kann man Measures auch optisch etwas strukturieren:

Ergebnis mit Slicer

Tabellen dokumentieren

In Excel Power Pivot lassen sich Tabellen als ganzes im Datenmodell nicht dokumentieren. Man kann aber die Abfrage, also die Power Query Abfrage, dokumentieren. Die eine Variante funktioniert über Daten - Abfragen und Verbindungen in Excel und dort bei der Abfrage über das Kontextmenü und die Funktion Eigenschaften. Es öffnet sich der typische Excel-Dialog:

Eigenschaften-Dialog von Excel Abfragen

Oder im Power Query-Dialog bei den Abfragen – dort ebenfalls via Kontextmenü und Eigenschaften:

Eigenschaften-Dialog von Power Query Abfragen

Beide Varianten sind gleichwertig. Der Text des einen Dialogs taucht im anderen entsprechend wieder auf.

Spalten dokumentieren

Kontextmenü zur Spaltenbeschreibung in Excel Power Pivot

Im Datenmodell gelangt man über das Kontextmenü einer Spalte zum Dialog der Spaltenbeschreibung:

Dialog der Spaltenbeschreibung in Excel Power Pivot

Hier kann man einen freien Text für jede Spalte sowie für jede berechnete Spalte hinterlegen.

Measures dokumentieren

Excel Power Pivot Measures dokumentieren

Neben den oben erwähnten Kommentar-Funktionen kann man auch bei Measures via Kontextmenü einen Beschreibungs-Dialog öffnen

Beschreibungs Dialog von Measures in Excel Power Pivot

Das ist doch total zerstreut?

Ja, das ist so. Und leider sieht man die Dokumentation auch im Datenmodell nicht richtig. Man sieht nicht, ob ein Measure oder eine berechnete Spalte dokumentiert ist. Man hätte erwartet, dass vielleicht ein kleines Icon darauf hinweist. Und man hätte erwartet, dass die Dokumentation im Tooltip steht, wenn man mit der Maus darüber geht.

Dokumentation via VBA-Makro

Mit einem Excel Makro kann man sich diese Informationen aber zusammensammeln. Und so eine Dokumentation generieren. Diese Dokumentation kann man dann extern verfügbar machen. Beispielsweise in einem Web-Portal. Die Generierung kann man jederzeit wiederholen und damit aktualisieren.

Das Excel Power Pivot Datenmodell hat dafür Systemtabellen, die man abfragen kann. Gleichzeitig kann aber auf viele Informationen direkt via VBA zugreifen.

Wir sind nicht der erste Blog, der die Möglichkeiten der System eigenen Tabellen erkannt hat. Sehr zu empfehlen in diesem Zusammenhang sind die Power Pivot Utilities von Bertrand d’Arbonneau, gehostet bei SQLBI. Das AddIn ist eine Ansammlung vieler VBA-Makros, die die tägliche Arbeit mit dem Datenmodell erleichtern.

Das AddIn genügt meines Erachtens nicht ganz für eine Dokumentation. Es fehlt die Dokumentation der Tabelle selbst sowie die Dokumentation der Spalten der Tabelle. Mit der API in VBA kommt man leider an die Daten nicht so einfach heran. Man muss Abfragen über die Datenverbindung in das Datenmodell ausführen:

VBA-Makro, um Spaltenbeschreibungen auszulesen

Ich habe selbst mal versucht die notwendigen Informationen in eine Excel-Arbeitsmappe zu exportieren. Unten in der Download-Section findest du die xlsm Datei.

Ihr macht das anders?

Dokumentation ist echt eine Herausforderung - überall. Wenn du eine andere, vielleicht bessere Variante verwendest, schreib uns in den Kommentaren oder schreib uns eine E-Mail. Dann machen wir einen neuen Blog-Beitrag dazu.