Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

In diesem Blogbeitrag werfen wir einen genaueren Blick auf eine benutzerdefinierte Funktion zur Textbereinigung, die ich für unsere laufende Serie bei LuckyTemplates TV mit dem Titel erstellt habe . Sie können sich das vollständige Video dieses Tutorials unten in diesem Blog ansehen.

Für Woche Nr. 2 haben wir einige chaotische Daten, die bereinigt werden müssen. Unser Ziel hier ist es, alle Textwerte in beiden Spalten zu bereinigen.

Für diese Aufgabe habe ich eine saubere Textfunktion erstellt.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Aber werfen wir zunächst einen kurzen Blick auf den M-Code.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Diese Funktion benötigt einen Parameter namens myText. Sein Wert sollte vom Typ Text sein und die Funktion sollte einen Textwert zurückgeben, da nicht alle unten aufgeführten Variablen einen Textwert zurückgeben.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Die Deklaration des Rückgabetyps führt zu einem Fehler. Um zu verhindern, dass dieser Fehler auftritt, kann ich das vorerst auskommentieren.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Wenn wir sehen möchten, was die erste Variable zurückgibt, müssen wir sie nur namentlich nach der in-Klausel angeben. Also kopiere ich die ToRemove-Variable, füge sie in der unteren Zeile ein und drücke auf „Okay“.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Um das Ergebnis dieser Funktion zu sehen, müssen wir sie aufrufen. Fügen wir dieser Abfrage also eine benutzerdefinierte Spalte hinzu.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Rufen Sie dann unsere Funktion auf, wählen Sie diese zusammengeführte Spalte aus und drücken Sie „Okay“.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Inhaltsverzeichnis

Erstellen der Listen aus einer leeren Abfrage

Wir sehen nun, dass der ToRemove-Schritt eine Liste erstellt. Tatsächlich handelt es sich um eine Kombination aus zwei Listen.

Die erste Liste erstellte die Anführungszeichen und die zweite Liste enthält eine Reihe von Zeichen, die ich entfernen wollte.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Wie habe ich diese Liste erstellt?

Nun, ich habe eine Funktion namens Txt.ToList verwendet.

Sie können auf die interne Funktionsdokumentation zugreifen, indem Sie eine leere Abfrage erstellen, den Funktionsnamen ohne Klammern eingeben und dann die Eingabetaste drücken.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Wir sehen, dass Text.ToList eine Liste von Zeichenwerten aus einem bestimmten Textwert zurückgibt.

Fügen wir einige Texte ein und rufen diese Funktion auf.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Es wird eine neue Abfrage erstellt und Sie können sehen, dass diese Liste alle Buchstaben enthält, die wir hier im Text sehen.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Denken Sie daran, dass ich eine zusätzliche Liste hinzugefügt habe, oder? Ich habe zwei Listen kombiniert und dazu das kaufmännische Und-Zeichen verwendet.

Lassen Sie uns das jetzt nachstellen. Ich habe das kaufmännische Und und den Listeninitialisierer verwendet und dann diese Anführungszeichen eingegeben.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Wir sehen jetzt, dass die Zitate zu dieser Liste hinzugefügt wurden, aber warum habe ich eine Liste erstellt?

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Nun, im nächsten Schritt meiner Textbereinigungsfunktion habe ich eine M-Funktion namens Text verwendet. Entfernen.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Und Sie sehen, dass Sie einen Text und dann eine Liste von Zeichen eingeben können, die Sie aus dieser Zeichenfolge entfernen möchten.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Kehren wir zu unserer Textbereinigungsfunktion zurück.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Zu. Remove hat diese beiden Listen erstellt und sie dann zu einer einzigen Liste zusammengefasst.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Und dann fügen wir die CleanText-Variable ein. Die „in“-Klausel ruft die M-Funktion Text.Remove auf, übergibt die Variable myText und ruft dann die To.Remove-Liste auf. Mal sehen, was das bewirkt.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Kehren wir zu unserer Anfrage zurück. Dies gibt keine Liste mehr zurück, sondern einige Textwerte.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Trimmen in Power Query

Der nächste Schritt ist das Trimmen . Wie Sie dem Bild oben entnehmen können, haben wir am Ende einige zusätzliche Leerzeichen und ein nachgestelltes Komma, die wir entfernen möchten. Dazu können wir die Trimmfunktionen nutzen. Kehren wir zur Abfrage zurück, um den M-Code zu untersuchen.

Im M-Code habe ich zwei Trimmfunktionen verschachtelt. Die erste String-Funktion entfernt die zusätzlichen Leerzeichen am Anfang und Ende unserer CleanText-Variablen.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Für die verbleibenden Texte, die wir haben, entfernen wir auch die Leerzeichen aus der Ergebniszeichenfolge.

Wir werden auch das abschließende Komma entfernen.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Schauen wir uns das Ergebnis an. Ich kopiere den Variablennamen, füge ihn nach der „in“-Klausel ein und klicke auf „Fertig“. Wenn wir unsere Abfrage aktualisieren, können Sie sehen, dass die zusätzlichen Leerzeichen verschwunden sind und das abschließende Komma entfernt wurde.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

In den letzten Schritten meiner Abfrage habe ich nur einige Textwerte ersetzt.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Im letzten Fall habe ich diesen Unterstrich durch ein Leerzeichen ersetzt. Kopieren wir das und fügen es nach der „in“-Klausel ein. Ich habe auch den Rückgabetyp wieder aktiviert.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Kehren wir zu unserer Abfrage zurück und untersuchen die Ergebnisse – soweit, so gut!

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Nun wollen wir keine neuen Spalten erstellen, um unsere Funktion aufzurufen, oder? Was wir tun können, ist stattdessen unsere Spalte 1 in unsere Zusammenführungsspalte umzuwandeln.

Ich werde diesen benutzerdefinierten Spaltenschritt entfernen.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Dann werde ich die Benutzeroberfläche verwenden, um den Großteil des Codes für uns zu erstellen. Wählen Sie auf der Registerkarte „Transformieren“ beide Spalten aus, gehen Sie zu „Format“ und wählen Sie eine Funktion aus.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Es spielt eigentlich keine Rolle, welche Funktion ausgewählt wird, da es sich hierbei um den M-Code handelt, der von der Benutzeroberfläche generiert wird. Wir können diesen Text jetzt ersetzen. Untere Funktion…

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

… mit unserer Klartextfunktion. Hoffentlich verstehen Sie, warum ich fx voranstellen musste. Es gibt kein „in Funktion“, das damit beginnt.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Wenn wir auf OK klicken, sehen Sie, dass unsere Texte bereinigt wurden. Das ist fantastisch.

Erstellen einer benutzerdefinierten Textreinigungsfunktion in Power Query

Abschluss

Warum mussten wir uns die ganze Mühe machen, eine benutzerdefinierte Reinigungsfunktion zu erstellen? Wenn es wahrscheinlich ist, dass Sie diesen Schritt in Zukunft wiederholen oder eine ähnliche Logik verwenden müssen, können Sie diese Funktionsabfrage speichern.

Dadurch wird die Abfrageentwicklung zu einem späteren Zeitpunkt beschleunigt. Ein weiterer guter Grund ist, dass es auch Spaß macht.

Ich hoffe, Ihnen hat dieses Tutorial gefallen. Wenn ja, vergessen Sie bitte nicht, den LuckyTemplates-Kanal zu abonnieren .

Melissa


Streudiagramm-Visualisierungen mit Charticulator

Streudiagramm-Visualisierungen mit Charticulator

In diesem Tutorial erfahren Sie, wie Sie mit Charticulator eine Streudiagramm-Visualisierung für Ihren LuckyTemplates-Bericht erstellen und entwerfen.

PowerApps-Suchfeld: So fügen Sie es hinzu und passen es an

PowerApps-Suchfeld: So fügen Sie es hinzu und passen es an

Erfahren Sie, wie Sie ein PowerApps-Suchfeld von Grund auf erstellen und es an das Gesamtthema Ihrer App anpassen.

Power Automate String-Funktionen: Substring und IndexOf

Power Automate String-Funktionen: Substring und IndexOf

Erlernen Sie ganz einfach zwei komplizierte Power Automate String-Funktionen, die in Microsoft Flows verwendet werden können – die Funktionen substring und indexOf.

Power Query M: Abwechselndes 0-1-Muster in der Datumstabelle

Power Query M: Abwechselndes 0-1-Muster in der Datumstabelle

Dieses Tutorial konzentriert sich auf die Power Query M-Funktion „number.mod“, um ein abwechselndes 0-1-Muster in der Datumstabelle zu erstellen.

Prognosetechnik: Erkundung der Prognoselogik in LuckyTemplates-Modellen

Prognosetechnik: Erkundung der Prognoselogik in LuckyTemplates-Modellen

In diesem Tutorial führe ich eine Prognosetechnik durch, bei der ich meine tatsächlichen Ergebnisse mit meinen Prognosen vergleiche und sie kumulativ betrachte.

Speichern Sie E-Mail-Anhänge in SharePoint mit Power Automate

Speichern Sie E-Mail-Anhänge in SharePoint mit Power Automate

In diesem Blog erfahren Sie, wie Sie mit Power Automate E-Mail-Anhänge automatisch in SharePoint speichern und E-Mails anschließend löschen.

Führen Sie eine Bis-Loop-Steuerung in Power Automate durch

Führen Sie eine Bis-Loop-Steuerung in Power Automate durch

Erfahren Sie, wie die Do Until Schleifensteuerung in Power Automate funktioniert und welche Schritte zur Implementierung erforderlich sind.

Berechnen eines gleitenden Durchschnitts in LuckyTemplates mithilfe von DAX

Berechnen eines gleitenden Durchschnitts in LuckyTemplates mithilfe von DAX

In diesem Tutorial erfahren Sie, wie Sie mithilfe der ALLSELECTED-Funktion einen dynamischen gleitenden Durchschnitt in LuckyTemplates berechnen können.

Berechnen Sie dynamisch eine laufende oder kumulative LuckyTemplates-Summe

Berechnen Sie dynamisch eine laufende oder kumulative LuckyTemplates-Summe

Durch diesen Artikel erhalten wir ein klares und besseres Verständnis für die dynamische Berechnung einer laufenden oder kumulativen Gesamtsumme in LuckyTemplates.

Power Automate auf jede Aktion in Workflows anwenden

Power Automate auf jede Aktion in Workflows anwenden

Erfahren und verstehen Sie die Bedeutung und ordnungsgemäße Verwendung der Power Automate-Aktionssteuerung „Auf jede anwenden“ in unseren Microsoft-Workflows.