<<HOME <TechDocs

Alexander von Boguszewski

Wie baut man EXCEL-DASHBOARDS


Wie baut man EXCEL-DASHBOARDS

Das Erstellen von Microsoft Excel-Dashboards ist für jeden, der mit Daten arbeitet, eine wichtige Fähigkeit. Excel-Dashboards ermöglichen es Entscheidungsträgern, Daten aus ihrem Betrieb zu bewerten und fundierte Entscheidungen zu treffen. Ich werde zeigen, wie man als Excel Anfänger interaktive Dashboards auf Basis von Dropdowns erstellt.

Um einen realistisches Dashboard zu erstellen habe ich mir überlegt anhand der Passagierzählung S-Bahn Hamburg, die uns die Deutsche Bahn in ihrem Open Data Portal bereitstellt (https://data.deutschebahn.com/dataset/passagierzahlung-s-bahn-hamburg), ein Dashboard über die wichtigsten Bahnhöfe in Hamburg zu erstellen.

Nachdem wir die Datei heruntergeladen und geöffnet haben, können wir uns schon einmal die Rohdaten ansehen. Wir sehen Datensätze vom Zeitraum von 10.12.2016 bis zum 31.03.2017. Die gelieferten Daten sind nicht weiter behandelte Daten (Rohdaten), auch wurde kein Saldenausgleich vorgenommen worden, das bedeutet das am Ende der Fahrt nicht zwangsläufig die Summe der Ein-Summe der Aussteiger Null ergeben.

Spalten- oder Tabellenbeschreibung

Zugnummer Station (klar) Einsteiger (roh) Aussteiger (roh) Ist Ankunft mit Datum und Zeit Ist Abfahrt mit Datum und Zeit DS100 kurz (hier ist vorne das “A” weggelassen) Linie

Ersteinmal sollten wir die Daten im XLSX Format speichern und eine neue Tabelle für das Dashboard hinzufügen. Die reinen Daten, bzw. das Datentabellenblatt werden wir nicht ändern. Wenn wir aktualisierte Daten im gleichen Format bekommen, können wir so diese Daten direkt neu einfügen und das Dashboard wiederverwenden

Tabellenblatt in RawData umbenennen

Rawdaten einlesen

RawData

Für ein Dashboard benötigen wir alle eindeutigen Bezeichnungen für die Stationen. Hierfür können wir mit der Excel Funktion EINDEUTIG eine Liste mit allen eindeutigen Werten erstellen. Da die erste Zeile für den Header verwendet wird und wir nicht wissen wieviele Zeilen neue Rohdaten beinhalten, müssen wir das Ende der Liste dynamisch mit der INDEX und ANZAHL2 ermitteln

Hier die Formel für die eindeutigen Stationsnamen:

=EINDEUTIG(RawData!B2:INDEX(RawData!B:B;ANZAHL2(RawData!B:B)))
Eindeutige Stationsnamen mit =EINDEUTIG(RawData!B2:INDEX(RawData!B:B;ANZAHL2(RawData!B:B))) ermitteln

Stationsnamen ermitteln

Anhand der Stationsnamen können anschließend dann die Ein- und Aussteiger mit SUMMEWENN berechnet werden

=SUMMEWENN(RawData!$B:$B;Dashboard!$B7;RawData!C:C)

Summieren der Ein und Aussteiger

Da dieses Dashboard aber nur sehr aggregierte Informationen liefert, erstellen wir noch ein detaillierteres Dashboard und fangen mit dem Design an:

Design Stationen Dashboard

Dashboard

Um die Daten für die einzelnen Station auswählen zu können, erstellen wir zunächst ein Dropdown zur Datenauswahl

Stationsauswahl Dropdown erstellen

Dropdown

Und legen dann die eben erstellte Liste als Quelle fest.

Stationsauswahl Dropdown Liste auswählen

Dropdown Liste festlegen

Anschließend können wir in dem Dropdown die Stationsnamen auswählen

Dropdown

Dropdown anzeigen

Als erstes Summieren wir alle Ein- und Aussteiger über den gesamten Zeitraum mit SUMMEWENNS:

=SUMMEWENNS(RawData!$C:$C;RawData!$B:$B;DashboardStationen!$F$2)```

Alle Einsteiger Summieren

Einsteiger Summieren

Dann müssen wir die Ein- und Aussteiger für die Einzelnen Monate summieren. Hier die Formel für die Einsteiger. Neben dem Filter auf die im Dropdown ausgewählte Station ```DashboardStationen!$F$2```, filtern wir auch noch auf den in der Zeile 8 angegebenen Monat mit ```>"&DATUM(JAHR(DashboardStationen!E8)``` und ```"<"&DATUM(JAHR(DashboardStationen!E8);MONAT(DashboardStationen!E8)+1```

=SUMMEWENNS(RawData!$C:$C;RawData!$B:$B;DashboardStationen!$F$2;RawData!$E:$E;">"&DATUM(JAHR(DashboardStationen!E8);MONAT(DashboardStationen!E$8););RawData!$E:$E;"<"&DATUM(JAHR(DashboardStationen!E$8);MONAT(DashboardStationen!E$8)+1;))


Summiere anhand des Monats

Summieren per Monat

Über "Einfügen"->"Sparklines" erstellen wir jetzt noch ein kleines Diagram in einer Zelle um die Änderungen über den Monat zu visualisieren.
Sparkline über die Veränderung innerhalb eines Monats

Sparkline

Als nächstes können wir noch die Linien die die ausgewählte Station anfahren ausgeben. Hier hilft wieder die Funktion [EINDEUTIG](https://support.microsoft.com/de-de/office/eindeutig-funktion-c5ab87fd-30a3-4ce9-9d1a-40204fb85e1e), hier in Kombination mit [FILTER](https://support.microsoft.com/de-de/office/filter-funktion-f4f7cb66-82eb-4767-8f7c-4877ad80c759). Hier selektieren wir alle Linien (RawData!H:H) die an der ausgewählten Station halten (RawData!B:B=DashboardStationen!$F$2), anschließend werden alle eindeutigen Linien ausgegeben.

=EINDEUTIG(FILTER(RawData!H:H;RawData!B:B=DashboardStationen!$F$2))


Alle Linien die am Hauptbahnhof halten

Filter Linien

Anschließend summieren wir wieder mit[SUMMEWENNS](https://support.microsoft.com/de-de/office/summewenns-funktion-c9e748f5-7ea7-455d-9406-611cebce642b)die Einsteiger, diesmal aber mit einem zweiten Kriterium für die Linie:

=SUMMEWENNS(RawData!$C:$C;RawData!$B:$B;DashboardStationen!$F$2;RawData!H:H;DashboardStationen!$B15)


Für die einzelnen Monate fügen wir das zusätzliche Kriterium analog hinzu:

=SUMMEWENNS(RawData!$C:$C;RawData!$B:$B;DashboardStationen!$F$2;RawData!$H:$H;DashboardStationen!$B15;RawData!$E:$E;">"&DATUM(JAHR(DashboardStationen!E$8);MONAT(DashboardStationen!E$8););RawData!$E:$E;"<"&DATUM(JAHR(DashboardStationen!E$8);MONAT(DashboardStationen!E$8)+1;))


Auch hier können wir Sparklines zur Visualisierung hinzufügen.

Summiere anhand des Monats und der Linien

Einsteiger nach Linien

Aussteiger können analog summiert werden. Eine interessante Fragestellung wäre jetzt natürlich auch zu welchen Zeiten die Stationen frequentiert werden. Für die Analyse wäre alles in den Rohdatensätzen da, aber die Daten müssen noch hierfür noch aufbereitet werden da die [SUMMEWENN Funktion](hhttps://support.microsoft.com/de-de/office/summewenn-funktion-169b8c99-c05c-4483-a712-1697a653039b) den kompletten Timestamp für den Vergleich heranzieht, und nicht nur die Stunde. Wir können aber in der RawData Tabelle eine neue Spalte einfügen und die Stunde aus dem dtmIstAnkunftDatum extrahieren.

=STUNDE(E2:E610671)


Anschließend können wir wieder mit [SUMMEWENNS](https://support.microsoft.com/de-de/office/summewenns-funktion-c9e748f5-7ea7-455d-9406-611cebce642b) alle Einsteiger einer Station zu einer bestimmten Stunde summieren.  

=SUMMEWENNS(RawData!$C:$C;RawData!$B:$B;DashboardStationen!$F$2;RawData!$I:$I;"="&STUNDE(DashboardStationen!$B37))


Zum Visualisieren müssen wir uns aber etwas anderes überlegen, da Sparklines nur horizontal funktionieren. Wir können Werte nur in Säulen oder einer Linie darstellen. Vertikale Balken können wir aber mittels bedingter Formatierung realisiere, hierfür erstellen wir über "Bedingte Formatierung" ->"Datenbalken" -> "Weitere Regeln" eine neue Formatierungsregel.

Summiere anhand der Uhrzeiten und erstelle eine Grafik mit bedingter Formatierung

Einsteiger nach Uhrzeit

Wenn beim anlegen der Regel "nur Datenbalken anz." angekreuzt wird, werden die Zahlen ausgeblendet.
Nur Datenbalken

Einsteiger nach Uhrzeit

Das Dashboard sieht nun so aus:
Passagier Dashboard

Finale Dashboard

Mir gefällt die Datapreperation direkt im Excel aber nicht, da diese bei jeder Aktualisierung des Datensatzes erneut erzeugt werden müsste. Möglichkeiten zur Datapreperation mit Talend Pipeline Designer zeige ich in einem der folgenden Beiträge.