Angenommen Du erhältst Daten in einer ungünstigen Struktur. Womöglich kennst Du die Funktion "Transponieren", indem Du die Daten markierst, kopierst und mittels "transponieren" einfügst. Dies "dreht" Deinen Bericht von einer Zeilen- zu einer Spaltenansicht (oder vice versa). Siehe hierzu auch diesen Beitrag: Einen Bericht drehen (Spalten zu Zeilen - Transponieren).
Für diesen Beitrag haben wir das untenstehende Datenset, mit zufälligen Adressdaten erhalten:
Wir können die Daten nicht weiterverwenden und müssen sie zuerst in dedizierte Spalten "Name", "Adresse" und "Telefon" bringen. Welche Lösungsansätze bieten sich uns? Mittels eingangs erwähntem "Transponieren" kommen wir nicht weiter; respektive nur ansatzweise (Eintrag für Eintrag). Ein manueller Übertrag kommt für uns natürlich nicht in Frage. Ein Makro mit einer For Each-Schleife würde funktionieren, es bietet sich jedoch mit einer einzigen Excel-Formel eine Lösung an: Die Formel "=ZEILENUMBRUCH" kann die Daten direkt für uns aufbereiten. Dies ist die Formel-Syntax:
Konkret können wir unsere Daten (die übrigens in den Zellen A1:A45 sind), mit folgender Formel aufbereiten lassen:
=ZEILENUMBRUCH(A1:A45;3)
Der "Vektor" beinhaltet der Bereich, wo unsere Daten aufgeführt sind. Die zweite Angabe, der "wrap_count" definiert, nach wie vielen Einträgen Excel jeweils einen "Zeilenumbruch" einfügen soll, um auf der nächsten Zeile fortzufahren.
Die Formel hat eine optionale Angabe "pad_with". Falls Du im Allgemeinen eine grosse Datenmenge zusammenführen möchtest und in der letzten Zeile nicht alle Einträge gefüllt werden, erhältst Du einen "#N/V"-Fehler. Mit der "pad_with"-Angabe kannst Du einen Wert dafür definieren (z.B. "NULL", "LEER", etc.).
Anstelle von "ZEILENUMBRUCH" könntest Du je nach Anwendungsfall auch "SPALTENUMBRUCH" verwenden; das Konzept ist ähnlich wie beim "SVERWEIS" und dem "WVERWEIS". Falls Du Excel auf Englisch benutzt, wären dies die Formeln "WRAPROWS" (ZEILENUMBRUCH) oder "WRAPCOLS" (SPALTENUMBRUCH), Rows für Zeilen, Cols für Spalten (Columns).
Die zufällig generierten "Testdaten" habe ich im Übrigen mit UiPath und dem "Testing" Aktivitäten-Package aufbereitet (UiPath.Testing.Activites). Es sind dies die Aktivitäten GivenName, LastName, Address und RandomNumber.