Free Trial

Blog - Deutsch

Erkenntnisse und Ideen von den besten Analytics-Experten.
RolandSchubert
16 - Nebula
16 - Nebula

"So, der Workflow ist fertig, wir können die Auswertung jetzt verteilen." 

 

Jetzt könnte der Moment gekommen sein, Daten aus einem Alteryx-Workflow in eine Excel-Datei zu schreiben, denn erfahrungsgemäß gibt es kaum jemanden, der Excel auf seinem Rechner nicht zur Verfüng hat. Und mit Excel kann der Empfänger die Ergebnisdaten noch weiter analysieren, kann filtern, sortieren oder auch zusätzliche Berechnungen durchführen. Also keine schlechte Option. Aber wie genau geht das und welche Möglichkeiten gibt es dabei ?

 

Als erste Option fällt bestimmt jedem das Output Data Tool ein - ist ja naheliegend. Also - wir ziehen ein Output Data Tool auf den Canvas; in der Konfiguration müssen wir zunächst die Datei festlegen, in die wir schreiben wollen:

 

P001.jpg  

 

Zunächst müssen wir in der folgenden Auswahlliste dann den Dateityp wählen.  Wir finden in der Liste gleich vier Varianten für Excel-Dateien: das alte Format (xls), das bis Excel 2003 verwendet wurde (gelegentlich begegnet mir tatsächlich noch eine Datei in diesem Format), das aktuelle Dateiformat (.xlsx), das für die Excel-Versionen ab 2007 im Einsatz ist, ein Format für Excel-Dateien, die Makros enthalten (.xlsm) und schließlich ein Format, das Excel-Dateien binär abspeichert (.xlsb) - dieses Format kann auch Dateien mit Makros speichern, ist schneller und benötigt weniger Speicherplatz als die anderen aktuellen Formate. Dieses Format (im Screenshot rot unterlegt) kann allerdings aus Alteryx nicht geschrieben werden!  

 

P002.jpg

 

Nach der Auswahl des Dateityps muss natürlich noch das Zielverzeichnis gewählt und der Name der Datei festgelegt werden:

 

P003.jpg

 

Schließlich müssen wir den Namen des Tabellenblatts festlegen, das beschrieben werden soll:

 

P004.jpg

 

Bei Spracheinstellung "Deutsch" wird hier übrigens "Seite1" als Standard vorgegeben und nicht "Tabelle1" ...

 

Die Konfiguration des Output Data Tools sieht jetzt so aus - bis auf die Eingabe des Dateinamens sind wir vorerst bei den Standardeinstellungen geblieben.

 

P005.jpg

 

 

Werfen wir vielleicht noch einen Blick auf den gesamten Workflow; die Schritte im Tool Container werden zur Aufbereitung der Daten benutzt, das Output Data Tool

verbinden wir dann einfach mit dem letzten Schritt:
P006.jpg

 

Wenn wir diesen Workflow jetzt ausführen, werden die Ergebnisdaten in die angegebene Excel-Datei geschrieben:

 

P007.jpg

 

Ein Klick auf den Eintrag im Results Window öffnet die Excel-Datei - eine Liste von Werten zu verschiendenen Niederlassungen.

 

P008.jpg

 

Wenn wir nun einen Fehler in den Daten feststellen und den Workflow nochmals ausführen, erhalten wir eine Fehlermeldung - da das Tabellenblatt bereits existiert, funktioniert natürlich "Create New Sheet" nicht mehr.  Aber - Alteryx liefert ja auch gleich einen Hinweis, was zu tun ist, um den Fehler zu vermeiden.

 

P009.jpg 

 

Wir können die Daten natürlich in eine andere Datei oder ein anderes Sheet (das dann noch nicht existieren sollte!) ausgeben, oder eine der anderen Output Options wählen: 

 

P010.jpg

 

"Append to Existing Sheet": die Daten werden an die bereits im Blatt vorhandenen Daten angehängt, das ist zum Beispiel sinnvoll, wenn jeden Monat neue Daten hinzugefügt werden sollen, in unserem Fall passt das aber nicht

"Overwrite File (Remove)": die Datei wird komplett überschrieben; das wäre eine Möglichkeit, ist aber zum Beispiel nicht sinnvoll, wenn die Datei (= Workbook) noch weitere Sheets enthält, die erhalten bleiben sollen
"Overwrite Sheet or Range" : nur das Blatt bzw. der Bereich werden überschrieben - das ist für unseren Fall (und viele andere) die sinnvollste Option.

 

Nach der entsprechenden Umstellung ist der Workflow beliebig wiederholbar, es wird einfach nur der Inhalt des entsprechenden Blattes ersetzt.

 

 

 

Allerdings - die Liste von Daten, die hier erzeugt wurde, ist vielleicht für den Empfänger nicht besonders übersichtlich. Schön wäre doch eine Excel-Arbeitsmappe, in der es für jede Niederlassung ein eigenes Blatt gibt. Auch das ist schnell und einfach umzusetzen. Wir können eines der Felder benutzen, um die Daten entsprechend auf einzelne Tabellenblätter (oder Arbeitsmappen) zu verteilen.

 

Wir wählen zunächst die Option "Take File/Table Name From Field" in der Konfiguration und entscheiden uns dann für ein Feld, das für den Namen verwendet werden soll (hier: NL). dann müssen wir noch festlegen, wie dieses Feld verwendet werden soll - ob der Feldinhalt als Suffix oder Prefix dem Sheetnamen hinzugefügt werden soll (das Ergebnis wäre dann zum Beispiel "NL11Sheet1" oder "Sheet1NL11"), ob der Name für das Arbeitsblatt oder die Datei entsprechend angepasst wird oder ob der komplette Pfad ersetzt wird - so könnten zum Beispiel niderlassungsspezifische Pfade vergeben werden.

 

P011.jpg

 

Diese Option enthält zwei Schritte:

- die Daten werden nach dem Inhalt des gewählten Felds gruppiert

- jede Gruppe wird auf ein eigenes Sheet (analog eine eigene Datei) geschrieben

 

Wir können zudem entscheiden, ob das Feld im Output enthalten sein soll. Im konkreten Fall könnte zum Beispiel darauf verzichtet werden, die Niederlassung auch in den Daten auszugeben - über den Blattnamen ist ja klar, um welche Daten es sich handelt. Besonders interessant ist diese Möglichkeit, wenn das Feld den kompletten Pfad enthält, das will man in der Regel nicht in der Auswertung sehen ...

 

In unserem Beispiel selektieren wir jetzt die Option "Take  File/Table Name From Field", wälen das Feld "NL" als Kriterium aus, das dann aber nicht mehr im Output ausgegeben werden soll, und entscheiden uns, den Feldinhalt als Name des Arbeitsblatts zu nutzen. Das Ergebnis sieht dann so aus:

 

P012.jpg

 

Für jedes Arbeitsblatt enthält das Results Window einen entsprechenden Eintrag, die Excel-Arbeitsmappe enthält für jede Niederlassung ein Blatt.

 

 

Ganz wichtig: Bei diesen Einstellungen wäre  "Overwrite File (Remove)" als Setting bei den Output Options ausgesprochen kontraproduktiv - bei jedem Gruppenwechsel würde zunächst die Datei gelöscht und neu angelegt, das Ergebnis wäre dann eine Arbeitsmappe, die nur die letzte Niederlassung enthält. Auf diesen Punkt muss man also besonders achten!

 

P013.jpg

 

 

Allerdings soll jetzt noch eine weitere Auswertung erzeugt werden, die eine Summe über alle Niederlassungen zeigt. Auch hier können wir Excel nutzen, aber die einfache Darstellung, die wir bisher genutzt haben, reicht in diesem Fall nicht- zumindest in gewissem Umfang muss jetzt auch formatiert werden.

 

Das Ergebnis soll etwa so aussehen (ist jetzt nicht so richtig schön, aber sollte das Prinzip erklären):

 

P015.png

 

Im Gegensatz zu den vorherigen Varianten beginnt der Bereich, in den geschrieben werden soll, nicht in Zelle A1, sondern erst in B4. Zudem soll die Formatierung erhalten bleiben - das gilt für die Rahmen, aber auch für Rahmen, Schriftgrößen etc. Um das zu erreichen, müssen wir bereits bei der Festlegung der Outputdatei das vorgegebene Tabellenblatt und den entsprechenden Zielbereich angeben:

 

P016.png

 

Außerdem muss noch die Option "Preserve Formatting on Overwrite" gewählt werden, die nur im Zusammenspiel mit einer Range-Angabe funktionert:

 

P017.png 

 

So schreiben wir genau in den Zielbereich und erhalten alle Formate! Mit dieser Methode können zum Beispiel vordefinierte Excel-Bereichte, deren Format auf keinen Fall verändert werden darf, mit Alteryx gefüllt werden.

 

So, jetzt kennen wir die Grundlagen, wenn es darum geht, Daten in Excel-Dateien zu schreiben. Mit einigen weiteren Möglichkeiten werde ich mich in folgenden Tuesday Tipps in den nächsten Monaten beschäftigen.

 

 

Weitere Tipps Tuesday Beiträge

Dieser Eintrag ist Teil der Tipps Tuesday-Serie, alle Einträge dieser Serie findest du in unserem Index aufgelistet.

 

 

 

Beschriftungen