Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeichen löschen mit Powerquery

Zeichen löschen mit Powerquery
18.12.2020 17:41:16
Christian
Hallo in die Runde,
ich versuche mir zur Zeit PoweQuery ein wenig anzueignen und habe im Moment leider einen Fall, in dem ich mehrere Arbeitsschritte durch eine PQ Lösung ersetzen wollte, aber leider an einer Stelle nicht mehr weiterkomme.
Soweit bin ich bislang:
let
Quelle = Excel.CurrentWorkbook(){[Name="Tabelle6"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Spalte1", type text}, {"Spalte2", type text}, {"Spalte3", type text}, {"Spalte4", type text}, {"Spalte5", type text}, {"Spalte6", type text}, {"Spalte7", type text}, {"Spalte8", type text}, {"Spalte9", type text}, {"Spalte10", type text}, {"Spalte11", type text}, {"Spalte12", type text}, {"Spalte13", type text}, {"Spalte14", type text}, {"Spalte15", type text}, {"Spalte16", type text}, {"Spalte17", type text}, {"Spalte18", type text}, {"Spalte19", type text}, {"Spalte20", type text}, {"Spalte21", type text}, {"Spalte22", type text}, {"Spalte23", type text}, {"Spalte24", type text}, {"Spalte25", type text}, {"Spalte26", type text}, {"Spalte27", type text}, {"Spalte28", type text}, {"Spalte29", type text}, {"Spalte30", type text}, {"Spalte31", type text}, {"Spalte32", type text}, {"Spalte33", type text}, {"Spalte34", type text}, {"Spalte35", type text}, {"Spalte36", type text}, {"Spalte37", type text}, {"Spalte38", type text}}),
#"Entpivotierte Spalten" = Table.UnpivotOtherColumns(#"Geänderter Typ", {}, "Attribut", "Wert"),
#"Entfernte Spalten" = Table.RemoveColumns(#"Entpivotierte Spalten",{"Attribut"}),
#"Gefilterte Zeilen" = Table.SelectRows(#"Entfernte Spalten", each [Wert] null and [Wert] ""),
#"Gefilterte Zeilen1" = Table.SelectRows(#"Gefilterte Zeilen", each not Text.Contains([Wert], "bio")),
#"Sortierte Zeilen" = Table.Sort(#"Gefilterte Zeilen1",{{"Wert", Order.Ascending}}),
#"Entfernte Duplikate" = Table.Distinct(#"Sortierte Zeilen")
in
#"Entfernte Duplikate"
Klappt soweit alles wunderbar. Das einzige Problem, was ich jetzt noch habe ist, dass fast alleq diese Texte mit einem Leerzeichen enden. Früher habe ich das einfach mit der Glätten Funktion gelöst, aber irgendwie finde ich keine entsprechende Funktion in PQ oder übersehe sie einfach und bitte euch daher um eure Hilfe.
Benutze Excel 2019
Vielen Dank
Christian
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:04:36
Yal
Hallo Christian,
the site you are looking for is:
https://docs.microsoft.com/de-de/powerquery-m/power-query-m-function-reference
Im Bereich "Textfunktionen" findest Du dort ein Text.Trim (Achtung: case sensitive)
= Table.AddColumn(#"Name der Schritt davor", "ZielFeldName", each Text.Trim([QuellFeldName]))
Dein Unpivot ist übrigens unwirksam. Daher der anschliessende Remove Column. Du kannst die Schritte einzeln löschen. Es mekert zwar, dass es könnte sein, dass es schief geht. Aber in dem Fall nicht.
Die gefilterte Zeilen können auch zusammengefasst werden. Bringt null Performance. Sieht nur schöner aus.
VG
Yal
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:15:58
Christian
Hallo Yal,
erstmal danke für deine Antwort.
Zum einen ich verstehe nicht, was du mit unwirksamem unpivot meinst, mein Ziel, 38 Spalten zu einer zu machen, erreiche ich doch damit.
Ich kenne diese Seite, konnte aber als Anfänger mit der Syntax
Text.Trim(text as nullable text, optional trim as any) as nullable text
reichlich wenig anfangen.
Hatte eher gehofft, dass es auch wie alles andere was ich bislang gemacht habe mit ein paar Mausklicks im PQ Editor geht. Weil von Programmieren hab ich gar keine Ahnung.
Gruß
Christian
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:32:12
ChrisL
Hi Christian
Ist weniger kompliziert wie es aussieht.
Wenn du über das Menü eine benutzerdefinierte Spalte hinzufügst und z.B.
=[MeineSpalte1]
schreibst, dann wird die Spalte dupliziert (die ursprüngliche Spalte kann man danach löschen).
Dasselbe in grün, aber mit Funktion:
=Text.Trim([MeineSpalte1])
cu
Chris
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:37:36
Christian
also mit anderen Worten,
ich hätte einfach nur
=Text.Trim([Wert]) in den Code eingeben müssen, so heißt die Spalte ja in der bisherigen Ausgabe...
AW: Zeichen löschen mit Powerquery
18.12.2020 18:48:33
ChrisL
nicht ganz... nicht im erweiterten Editor, sondern in der Eingabemaske, welche sich öffnet sobald du auf "benutzerdefinierte Spalte hinzufügen" drückst. Wenn du den M-Code anschliessend im erweiterten Editor anschaust, sollte das Resultat in etwa Deckungsgleich mit dem Code von Yal sein.
Die Optionen "bedingte oder benutzerdefinierte Spalte hinzufügen" benötigst du womöglich noch öfters. Beispielsweise für kleine Rechenoperationen
=[Wert]/[Anzahl]
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:56:36
Christian
ah, jetzt verstehe ich. DAnke
AW: Zeichen löschen mit Powerquery
18.12.2020 18:44:38
Yal
Hallo Christian,
ja, ok, da hast Du recht. Es ist UnpivotOtherColumns, daher ist die Liste leer. Sehr ungewöhnlich und deswegen nicht direkt nachvollziehbar, aber bei nähere Betrachtung passt. (und vor allem mit Erklärung).
Mein Tipp: bei nicht verstehen, einfach probieren. In PQ-Fenster kann man alles rückgängig machen.
Die Klickerei ist tatsächlich der Krux: es gibt soviele verchiedenen Stellen in dieser PQ. Den Tipp hatte z.B. noch nicht auf dem Schirm, obwohl ich es schon einmal benutzt habe.
VG
Yal
Anzeige
AW: Zeichen löschen mit Powerquery
18.12.2020 18:55:59
Christian
Hallo Yal, überhaupt kein Problem. Niemand kennt jede Kleinigkeit, die Excel bietet, dafür ist es viel zu komplex. Auf jeden Fall vielen Dank für deine Mühe, mir zu helfen.
AW: Zeichen löschen mit Powerquery
18.12.2020 18:11:40
ChrisL
Hi
Geht auch mittels rechter Maustaste:
cu
Chris
AW: Zeichen löschen mit Powerquery
18.12.2020 18:17:28
Christian
Hallo Chris,
das habe ich wohl wirklich übersehen, vielen Dank.
Christian
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zeichen löschen mit Power Query


Schritt-für-Schritt-Anleitung

Um in Power Query Leerzeichen zu entfernen, kannst Du die Text.Trim-Funktion verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Power Query öffnen: Öffne deine Excel-Datei und gehe zu Daten > Abfragen und Verbindungen, um Power Query zu starten.
  2. Tabelle importieren: Wähle die Tabelle aus, aus der Du Leerzeichen entfernen möchtest.
  3. Benutzerdefinierte Spalte hinzufügen:
    • Klicke auf Spalte hinzufügen > Benutzerdefinierte Spalte.
    • Gib einen Namen für die neue Spalte ein.
    • Verwende die Formel:
      = Text.Trim([DeineSpalte])
    • Dies entfernt alle führenden und nachfolgenden Leerzeichen.
  4. Alte Spalte entfernen: Du kannst die ursprüngliche Spalte, die die Leerzeichen hatte, löschen.
  5. Abfrage schließen und laden: Schließe den Power Query Editor und lade die Daten zurück in Excel.

Häufige Fehler und Lösungen

  • Fehler: "Die Spalte existiert nicht"

    • Lösung: Stelle sicher, dass der Name der Spalte in der Text.Trim-Funktion korrekt ist.
  • Fehler: Leerzeichen werden nicht entfernt

    • Lösung: Überprüfe, ob du die richtige Funktion (Text.Trim) verwendest. Manchmal kann es hilfreich sein, auch Text.Clean zu verwenden, wenn unsichtbare Zeichen vorhanden sind.

Alternative Methoden

Eine weitere Möglichkeit, um Leerzeichen zu entfernen, ist die Verwendung der Text.Remove-Funktion. Diese kann auch spezifische Zeichen löschen:

  • Um alle Leerzeichen zu entfernen:
    = Text.Remove([DeineSpalte], {" "})

Wenn Du nur führende oder nachfolgende Leerzeichen entfernen möchtest, bleibt Text.Trim die beste Wahl.


Praktische Beispiele

Hier sind einige Beispiele, wie Du Leerzeichen in Power Query entfernen kannst:

  1. Führende und nachfolgende Leerzeichen entfernen:

    = Table.AddColumn(Quelle, "BereinigteSpalte", each Text.Trim([Wert]))
  2. Leerzeichen am Ende entfernen: Dies wird automatisch durch Text.Trim erledigt, aber Du kannst auch spezifisch Text.Right verwenden, um den Text nach bestimmten Kriterien zu kürzen.

  3. Leere Zeilen entfernen: Um leere Zeilen zu entfernen, kannst Du:

    = Table.SelectRows(Quelle, each [Wert] <> null and [Wert] <> "")

Tipps für Profis

  • Nutze die "Erweiterte Editor"-Funktion, um komplexere Abfragen zu erstellen. Hier kannst Du direkt M-Code eingeben und anpassen.
  • Verwende die Vorschaufunktion, um zu sehen, wie Deine Änderungen die Daten beeinflussen, bevor Du sie anwendest.
  • Halte die Abfragen so einfach wie möglich, um die Performance zu verbessern. Kombiniere Filter- und Sortierschritte, wenn es möglich ist.

FAQ: Häufige Fragen

1. Wie entferne ich führende Nullen in Power Query? Du kannst Text.TrimStart verwenden, um führende Nullen zu entfernen:

= Text.TrimStart([DeineSpalte], "0")

2. Wie kann ich mehrere Zeichen gleichzeitig entfernen? Verwende Text.Remove und gib die zu entfernenden Zeichen in einer Liste an:

= Text.Remove([DeineSpalte], {" ", "0", "."})

Mit diesen Anleitungen und Tipps kannst Du in Power Query effektiv Leerzeichen und andere unerwünschte Zeichen entfernen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige