Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Power Query x-stellige Zahl auslesen

Forumthread: Power Query x-stellige Zahl auslesen

Power Query x-stellige Zahl auslesen
03.08.2021 09:48:25
Alexander
Hallo liebe Forumsmitglieder,
ich hab eine Frage zu Power Query in Excel. Kann ich mir aus Zellen, welche Text und Zahlen enthält eine x-stellige Zahl suchen und (sofern vorhanden) diese in eine separate Spalte kopieren?
BG
Anzeige

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Power Query x-stellige Zahl auslesen
03.08.2021 10:27:00
ChrisL
Hi
Wenn eine Zelle ein Gemisch aus Text und Zahlen enthält, dann ist das Feld als Text zu behandeln.
Ein bedingte Spalte, mit "enthält" Suchkriterium sollte die Aufgabe erledigen können. Suchkriterium = "Zahl" (Text-String).
cu
Chris
AW: Power Query x-stellige Zahl auslesen
03.08.2021 11:21:27
Alexander
Wie kann so eine Programmzeile bei der Erstellung einer neue Spalte aussehen?
Versteh zwar deinen Ansatz, nur fehlen mir die "Programmierkenntnisse" dazu...
BG
Anzeige
AW: Power Query x-stellige Zahl auslesen
03.08.2021 11:34:13
ChrisL
Programmieren musst du nicht...
Userbild
AW: Power Query x-stellige Zahl auslesen
03.08.2021 12:17:35
Alexander
Mit dieser Vorgangsweise kann ich jedoch nur eine bestimmte Nummer suchen und wenn diese dann in einer Zelle enthalten ist, wird der gesamte Zelleninhalt kopiert.
Meine Überlegung war jene, dass ich z.B.: beliebige 7stelligen Nummern (Bsp.: 1234567, 5556677) finde und wenn eine in der Zelle vorhanden ist, nur diese Nummer in eine neue spalte kopiere.
BG
Anzeige
AW: Power Query x-stellige Zahl auslesen
03.08.2021 14:03:29
ChrisL
Hi
OK, falsch verstanden.
Mit ein paar Beispielen könnte man das genaue Muster analysieren z.B.
- bestimmte Position im Text
- gibt es noch andere Ziffern im Text (nur nach oder auch vorgelagert)
- Erkennungsmerkmale wie Leerzeichen vor/nach der Nummer
- gibt es Nummern auch am Anfang/Ende vom Text oder nur mitten drin usw.
Wenn es nur eine Nummer gibt, dann würde ich hiermit arbeiten:
https://community.powerbi.com/t5/Desktop/PowerQuery-Extract-Numbers-from-A-string-eg-ABCD1234/m-p/198666
Die Länge (Anzahl Ziffern) lässt sich ganz am Schluss einfach prüfen:
https://docs.microsoft.com/en-us/powerquery-m/text-length
Ansonsten... Soweit ich verstehe gibt es die Option Splitter.SplitTextByCharacterTransition nur in XL365, was ich leider nicht zur Verfügung habe:
https://community.powerbi.com/t5/Desktop/Extract-number-and-text-from-string/td-p/1190132
Da würde ich mal splitten, entpivotieren, Länge prüfen, ausfiltern und bei Bedarf wieder mit der Quelle verbinden.
Für eine konkretere Hilfe bräuchte man mal ein paar repräsentative Beispiele um die Muster/Pattern zu erkennen.
cu
Chris
Anzeige
AW: Power Query x-stellige Zahl auslesen
03.08.2021 15:38:47
Günther
Moin,
wenn DU es könntest, würdest du ja nicht fragen... ☺ (Ich weiß, etwas "schief" die Antwort, aber da du dir so viel Mühe mit eier Muster-xlsx und einer EXAKTEN Beschreibung gegeben hast…)
Und ansonsten: Wahrscheinlich ist es möglich, das Problem mit PQ zu lösen.
 
Gruß
Günther  |  mein Excel-Blog
Anzeige
AW: Power Query x-stellige Zahl auslesen
04.08.2021 09:55:50
Alexander
Auf die Antwort hin, hab ich mir die Erstellung einer xls Datei natürlich nicht nehmen lassen ;-) https://www.herber.de/bbs/user/147446.xls
Vielleicht hast du ja eine passende Lösung für meine Frage.
BG
AW: Power Query x-stellige Zahl auslesen
04.08.2021 10:54:07
ChrisL
Hi
Bezogen auf die Beispieldatei z.B.
https://www.herber.de/bbs/user/147451.xls
cu
Chris
Anzeige
AW: Power Query x-stellige Zahl auslesen
04.08.2021 11:19:48
Alexander
Echt geile Lösung und noch dazu einfach und verständlich!!!
VIELEN, VIELEN DANK
BG
AW: Power Query x-stellige Zahl auslesen
04.08.2021 18:03:30
Luschi
Hallo ChrisL,
Deine Lösung gefällt mir,i ch kann aber folgenden Schritt per Maus im PQ-Editor nicht nachvollziehen:
#"Spalte nach Trennzeichen teilen" = Table.ExpandListColumn((Table.TransformColumns(#"Duplizierte Spalte",
...
Mit der Maus-Klickerei: Spalte hinzufügen - Extrahieren geling es mir nicht. Gibt es da noch 1 Trick oder bin ich im falschen Film und man muß es selber eintippen?
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Power Query x-stellige Zahl auslesen
04.08.2021 19:03:04
ChrisL
Hi Luschi
Freut mich, dass die Lösung gefällt.
Es ist leicht zu übersehen. Im Menü "Spalten teilen" nach Leerzeichen, gibt es die erweiterte Option unten, womit du die Teilung direkt in Zeilen vornehmen kannst.
cu
Chris
AW: Power Query x-stellige Zahl auslesen
04.08.2021 20:47:13
Luschi
Hallo ChrisL,
danke für die Information, da habe ich 'ne halbe Stunde mir den Wolf gesucht und dabei kann es so einfach sein; in diesem Link
https://docs.microsoft.com/de-de/power-query/split-columns-delimiter
ist das noch einmal ganz gut beschrieben, man muß aber auch gucken können und sehen wollen!
Gruß von Luschi
aus klein-Paris
Anzeige
;
Anzeige

Infobox / Tutorial

Power Query: X-stellige Zahl auslesen


Schritt-für-Schritt-Anleitung

  1. Power Query öffnen: Wähle in Excel die Datenquelle aus, die du bearbeiten möchtest, und öffne den Power Query-Editor.

  2. Spalte hinzufügen: Klicke auf „Spalte hinzufügen“ und wähle „Benutzerdefinierte Spalte“.

  3. Formel eingeben: Verwende die folgende Formel, um eine x-stellige Zahl aus einer Zelle auszulesen:

    if Text.Contains([DeineSpalte], "Zahl") then 
      Text.Select([DeineSpalte], {"0".."9"}) 
    else 
      null

    Hierbei ersetzt du DeineSpalte durch den Namen deiner Spalte. Diese Formel prüft, ob die Zelle einen bestimmten Text enthält und extrahiert die Ziffern.

  4. Länge der Zahl prüfen: Um sicherzustellen, dass die Zahl die richtige Länge hat (z.B. 15 oder 19 Stellen), kannst du die Text.Length Funktion verwenden:

    if Text.Length(Text.Select([DeineSpalte], {"0".."9"})) = 15 then 
      "15-stellige Zahl gefunden" 
    else 
      null
  5. Ergebnisse laden: Nach der Bearbeitung kannst du die Änderungen anwenden und die Daten zurück nach Excel laden.


Häufige Fehler und Lösungen

  • Zahl wird nicht extrahiert: Stelle sicher, dass die richtige Spalte in der Formel verwendet wird und dass die Zelle tatsächlich eine Zahl enthält.
  • Text wird nicht erkannt: Überprüfe, ob die Bedingung in der Formel korrekt ist. Eventuell musst du den Suchtext anpassen.
  • Länge der Zahl nicht ermittelt: Stelle sicher, dass die Text.Length Funktion korrekt angewendet wird und die Ziffern tatsächlich aus der Zelle extrahiert wurden.

Alternative Methoden

  • Verwendung von Power BI: Wenn du mit Power BI arbeitest, kannst du ähnliche Ansätze nutzen, um Text in Zahlen umzuwandeln. Du kannst die Funktion Text.Select verwenden, um Zahlen aus Textstrings zu extrahieren.

  • Excel-Formeln: Anstatt Power Query zu verwenden, könntest du auch Excel-Formeln wie =WENN(ISTZAHL(SUCHEN("Zahl";A1));TEXT(A1;"0"));"" nutzen, um die 15-stellige oder 19-stellige Zahl direkt in Excel auszulesen.


Praktische Beispiele

  1. Beispiel mit 7-stelliger Zahl: Angenommen, du hast einen Text wie „Der Code ist 1234567 und mehr“. Mit der oben beschriebenen Formel kannst du „1234567“ extrahieren.

  2. Bedingte Extraktion: Wenn du nur Zahlen extrahieren möchtest, die 15 Ziffern lang sind, kannst du die Text.Length Funktion direkt nach der Extraktion verwenden, um nur diese Ergebnisse anzuzeigen.


Tipps für Profis

  • Nutze Splitter.SplitTextByCharacterTransition, um Text in eine Liste von Zeichen zu teilen. Dies ist besonders nützlich, wenn du nach bestimmten Übergängen zwischen Text und Zahlen suchst.

  • Experimentiere mit Text.Middle und Text.PositionOfAny, um gezielt nach Ziffern in spezifischen Positionen innerhalb eines Textes zu suchen.

  • Achte darauf, dass die verwendeten Funktionen in deiner Excel-Version verfügbar sind, insbesondere wenn du eine ältere Version verwendest, in der nicht alle Power Query-Funktionen enthalten sind.


FAQ: Häufige Fragen

1. Wie kann ich eine 15-stellige Zahl aus einem Text extrahieren?
Verwende die oben angegebene Formel in Power Query und passe die Text.Length Funktion an, um nur 15-stellige Zahlen zu filtern.

2. Kann ich die Anzahl der Zeichen in einer Zelle zählen?
Ja, du kannst die Text.Length Funktion verwenden, um die Anzahl der Zeichen in einer Zelle zu zählen.

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