Posts

Es werden Posts vom März, 2016 angezeigt.

Mehrfache Fallunterscheidung in Power Query, SELECT CASE Datentyp Text

Bild
Mit einer benutzerdefinierten Funktion in Power Query ist es möglich, eine mehrfache Fallunterscheidung analog der SELECT CASE Anweisung in VBA zu realisieren. Beispiel: Tabellenname = Tabelle1 Spaltenbezeichnung = Artikelgruppe zu Funktion Text.Range siehe nützliche Textfunktionen in Power Query Language M Code (Power Query, Start -> erweiterter Editor) let     SELECT_CASE = (input) => let       values = {             {"0", "Null"},             {"1", "Eins"},             {"2", "Zwei"},             {"3", "Drei"},             {"4", "Vier"},             {"5", "Fünf"},             {"6", "Sechs"},             {"7", "Sieben"},             {"8", "Acht"},             {"9", "Neun"},             {input, "tbd"}         },       Ergebnis = List.First(Lis

IF Funktion in Power Query

Bild
Wichtig vor der Nutzung der IF Funktion (und aller anderen Power Query Funktionen) ist, dass sie case sensitiv sind (siehe hierzu auch Text Funktionen  in Power Query). Im Folgenden soll anhand einer if ... then ... else Konstruktion die Funktionsweise anhand einem Praxisbeispiel erläutert werden. Zur Verdeutlichung der verwendeten Text Funktionen siehe Artikel Text Funktionen in Power Query

nützliche Text Funktionen in Power Query

Bild
Im Folgenden werden ein paar in der Praxis nützliche Text Funktionen in Power Query aufgelistet. Im Voraus soll darauf hingewiesen werden, dass es 2 wesentliche Unterschiede zwischen Excel und Power Query Formeln / Funktionen gibt: case sensitivity Excel Formel unterscheiden nicht zwischen Groß- und Kleinschreibung, Power Query Formeln indes schon. Wenn eine Power Query Signatur Text.Range vorgibt, dann wird TEXT.RANGE oder text.range nicht funktionieren (case sensitive). Basis 1 versus Basis 0 Excel Formeln / Funktionen beziehen sich immer auf die Basis 1, d.h. man fängt mit 1 an zu zählen. Auf der anderen Seite startet das Zählen in einer Power Query Funktion immer mit 0, nicht 1. Vergleich Excel Text mit Power Query Funktionen Text.Contains(Text,Suchstring) gibt TRUE zurück, wenn <Suchstring> in <Text> beinhaltet ist, andernfalls FALSE z.B. Text.Contains("Power Query","Query") Rückgabewert = TRUE Text.Remove([Column],{"

Text.SplitAny Trunkation Extraktion mit Power Query

Bild
Lern Video Mit Excel Power Query Funktion Text.SplitAny kann man sehr elegant ein Teilwort aus einem Text bis zum ersten Auftauchen eines oder mehrerer Trennzeichen (Trunkation) durchführen. Dies kann v.a. dann sehr sinnvoll sein, wenn man ein weiteres Filter Merkmal in einer Tabelle / Modell benötigt (Datenveredelung). Nachdem die Tabelle in Power Query geladen wurde, eine neue benutzerdefinierte Spalte (Werte) erstellen und folgende benutzerdefinierte Spaltenformel hinterlegen: Text.SplitAny([Bezeichnung],"_;,-/,'""' ") Das Ergebnis ist ein List-Objekt. Wenn nur das erste Teilwort benötigt wird, eine weitere benutzerdefinierte Spalte einfügen, in welcher auf das erste Teilwort in dem List-Objekt verwiesen wird: verbesserte Text.SplitAny Funktion (benutzerdefinierte Funktion) neue Abfrage erstellen, Language M Code kopieren und Abfrage in fxTextSplitAnyNew umbenennen Diese verbesserte Funktion erlaubt zusätzlich die Benu