Import einer JSON-Datei per Power Query nach Excel

JSON als Datenaustauschformat spielt eine immer größere Rolle. Viele Webservices stellen Ihre Daten im JSON-Format zur Verfügung. In diesem Tipp zeigen wir Ihnen, wie Sie eine Textdatei im JSON-Format per Power Query nach Excel importieren. Ausgangsbeispiel Die JSON-Datei, die mit Hilfe von Power Query nach Excel importiert werden soll, enthält Daten von 3 Kontaktpersonen. Die Datei sieht im Editor folgendermaßen aus: JSON-Datei Das erste Zeichen in der JSON-Datei ist eine sich öffnende eckige Klammer. Sie kennzeichnet den Beginn eines Arrays oder Datenfeldes. Danach folgen in geschweiften Klammern die Daten der einzelnen Kontaktpersonen. Die Bezeichnungen werden in Anführungszeichen gesetzt. Nach der Bezeichnung folgt ein Doppelpunkt. Text- und Datumsinformationen werden in Anführungszeichen gesetzt. Dezimalzahlen mit Nachkommastellen enthalten einen Dezimalpunkt. Einer Kontaktperson können eine oder mehrere Kategorien zugeordnet werden. Diese Kategorien werden in einem Array mit einer sich öffnenden und schließenden eckigen Klammer dargestellt. Am Ende der Datei steht eine schließende, eckige Klammer. Laden der JSON-Datei in den Editor von Power Query Um die JSON-Datei in Power Query zu laden, gehen Sie folgendermaßen vor: Legen Sie in Excel eine neue Arbeitsmappe an. Klicken Sie im Menüband auf der Registerkarte Daten in der Gruppe Daten abrufen und transformieren auf die Schaltfläche Daten abrufen. Klicken Sie danach auf den Menüpunkt Aus Datei und dann auf Von JSON. Suchen Sie im Windows-Explorer nach der JSON-Datei. Danach wird der Editor von Power Query gestartet. Er sieht in unserem Beispiel so aus: JSON-Datei als Liste mit Records Die Daten der 3 Kontaktpersonen aus der JSON-Datei erscheinen als Liste mit 3 Records. Ein einzelner Record sieht in der JSON-Datei so aus: JSON-Datei mit einzelnem Record Transformieren der Daten Bevor die Daten nach Excel übertragen werden, sind einige Transformationsschritte notwendig. Umwandeln der Liste von Records in eine Tabelle von Records Klicken Sie in den Listentools von Power Query auf die Schaltfläche Zu Tabelle. Es öffnet sich das Dialogbild Zu Tabelle. Sie brauchen keine Änderungen vorzunehmen. Klicken Sie auf OK. Die neu erzeugte Tabelle wird so dargestellt: JSON-Datei als Tabelle mit Records Erweitern der Spalte in der Tabelle Klicken Sie im Spaltenkopf der Spalte Column1 auf die Schaltfläche mit den beiden Pfeilen. In dem sich öffnenden Dialogbild deaktivieren Sie die Option Ursprünglichen Spaltennamen als Präfix verwenden. Klicken Sie auf OK. Die einzelnen Informationen zu den Kontaktpersonen werden in verschiedenen Spalten dargestellt. In der Spalte Kategorien erscheint entweder der Eintrag null, wenn der Kontaktperson keine Kategorie zugeordnet wurde, oder der Eintrag List. Kategorien in einer JSON-Datei Bezeichnungen der Kategorien sichtbar machen Um die Kategorien sichtbar zu machen, gehen Sie folgendermaßen vor: Klicken Sie im Menüband auf der Registerkarte Spalte hinzufügen auf die Schaltfläche Neue benutzerdefinierte Spalte. Das zugehörige Dialogbild wird angezeigt. Geben Sie im Eingabefeld Neuer Spaltenname den Ausdruck Kategorien_neu ein. Geben Sie im Eingabefeld Benutzerdefinierte Spaltenformel folgende Formel ein: = if [Kategorien] = null then {} else List.Transform([Kategorien], each Record.Field(_, Bezeichnung)). Das Dialogbild sieht danach so aus: Neue benutzerdefinierte Spalte Klicken Sie auf OK. Es wird eine neue Spalte mit der Überschrift Kategorien_Neu erzeugt. Zunächst wird in der Formel geprüft, ob einer Person eine Kategorie zugeordnet wurde. Wenn es keine Kategorie gibt, d. h. in der Spalte erscheint der Wert null, wird eine leere Liste erzeugt. Die leere Liste erzeugen Sie mit dem Ausdruck {}. Im anderen Fall wird in der Spalte der Ausdruck List angezeigt, d. h. die Kategorien werden zurzeit als Liste von Records dargestellt. Die Liste enthält so viele Records wie es zugeordnete Kategorien gibt. Diese Liste von Records wird mit der Funktion List.Transform in eine andere Liste umgewandelt. Aus jedem Record der Liste wird der Inhalt des Feldes Bezeichnung herausgezogen und in eine neue Liste übertragen. So wird pro Kontaktperson eine Liste von Kategorien erzeugt. Im nächsten Schritt müssen die Werte aus dieser neuen Liste extrahiert werden: Klicken Sie im Spaltenkopf der Spalte Kategorien_Neu auf die Schaltfläche mit den beiden Pfeilen. Klicken Sie auf den Menüpunkt Werte extrahieren. Das zugehörige Dialogbild erscheint. Wählen Sie als Trennzeichen für das Verketten von Listenwerten den Eintrag Komma. Klicken Sie auf OK. Abschließende Transformationsschritte Löschen Sie die Spalte Kategorien. Benennen Sie die Spalte Kategorien_neu in Kategorien um. Ändern Sie die Datentypen der Spalten Größe und Gewicht in Dezimalzahl, der Spalte Lieferdatum in Datum und der übrigen Spalten in Text um. Danach sehen die Daten im Editor von Power Query so aus: Transformierte Daten aus JSON-Datei mit Power Query Übertragen der Daten nach Excel Wenn Sie im Menüband auf der Registerkarte Start auf die Schaltfläche Schließen und Laden klicken, werden die Daten in ein neues Excel-Tabellenblatt übertragen. Die Tabelle sieht in Excel so aus: Importierte JSON-Datei als Ergebnistabelle in Excel Fazit Der Aufbau der JSON-Datei bestimmt die notwendigen Transformationsschritte. In unserem Beispiel ist eine neue benutzerdefinierte Spalte erzeugt worden, um die Kategorien einer Kontaktperson in einer Zelle darstellen zu können. Solange sich der Aufbau der JSON-Datei nicht ändert, können Sie den Importvorgang mit aktuellen Daten immer wiederholen.

zum Artikel gehen

Import einer XML-Datei per Power Query nach Excel

Neben JSON ist XML ein wichtiges Datenaustauschformat. Viele Systeme können Dateien in einem XML-Format exportieren. In diesem Tipp zeigen wir Ihnen, wie Sie eine XML-Datei per Power Query nach Excel importieren. Ausgangsbeispiel Die XML-Datei, die mit Hi

zum Artikel gehen

Wie Sie jede Datei finden – blitzschnell!

Die ewige Suche nach Dokumenten! Warum dauert das oft so lange? Wie kann es sein, dass Sie bei Google das Weltwissen in Sekunden abrufbar haben, in Ihrem eigenen Unternehmen aber stundenlang nach dem richtigen Dokument in der richtigen Version suchen müss

zum Artikel gehen

CSS Media Queries vs. Container Queries

Todays web is built around components and thats where media queries are lacking behind. We are going to see why in this article. But first, lets cover the basics and start with a recap of media queries and the newer feature called container queries. Later

zum Artikel gehen

Effective Snowflake Data Ingestion with Java

Snowflake is becoming increasingly popular as a data platform, and thus the need for ways to integrate Snowflake into production systems is also growing. As type-safe programming languages like Java lead to more stable productive environments and are ofte

zum Artikel gehen

Einladung zum Pilatus-B4-Treffen auf der Wasserkuppe

Termin: 05. bis 08. September 2024 Ort: Flugplatz Wasserkuppe (EDER) Organisation: Fliegerschule Wasserkuppe / HG Pilatus B4 D-2301 Liebe Pilatus-B4-Freunde,wir freuen uns, endlich ein Pilatus-B4-Treffen auf der Wasserkuppe durchzuführen.Die Fliegersc

zum Artikel gehen