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

Forumthread: Zahl aus String extrahieren

Zahl aus String extrahieren
Dieter(Drummer)
Hi orumsspezialisten,
ich suche eine Formel oder VBA Lösung, damt ich aus einem String die Zahlen (rechts) selektieren kann. Habe im Netz schon Formel gefunde, die aber in einem Fall nicht das Ergebnis zeigt. Wenn die Zahl im String ABC DF ERF 0123 456 ist, geht die Formel nicht. Das Ergebnis in B1 sollte 0123 456 sein. Die Zahlen können unterschiedlich lang un mit Leerstellen zwischen dem Zahlenblock sein. Hier mein Bespiel und Danke für evtl. Hilfe:
Tabelle1
 ABC
1ABCD EF GH 0123 456  #WERT!
2AA BB CDEFG 34677  34677
3ab c de fgh 123456789  123456789
4ab cd ef g h i jk 123  123

verwendete Formeln
Zelle Formel Bereich
C1 {=TEIL(A1;FINDEN("-";A1;FINDEN("-";A1)+1)+1;FINDEN("-";A1;FINDEN("-";A1;FINDEN("-";A1)+1)+1)-FINDEN("-";A1;FINDEN("-";A1)+1)-1)} $C$1
C2 {=TEIL(A2;VERGLEICH(WAHR;ISTZAHL(TEIL(A2;SPALTE(2:2);1)*1);0);LÄNGE(A2))*1} $C$2
C3 {=TEIL(A3;VERGLEICH(WAHR;ISTZAHL(TEIL(A3;SPALTE(3:3);1)*1);0);LÄNGE(A3))*1} $C$3
C4 {=TEIL(A4;VERGLEICH(WAHR;ISTZAHL(TEIL(A4;SPALTE(4:4);1)*1);0);LÄNGE(A4))*1} $C$4
{} Matrixformel mit Strg+Umschalt+Enter abschließen
Matrixformeln sind durch geschweifte Klammern {} eingeschlossen
Diese Klammern nicht eingeben!!


Tabellendarstellung in Foren Version 5.48


Gruß, Dieter(Drummer)
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zahl aus String extrahieren
18.07.2012 16:52:17
Hajo_Zi
Hallo Dieter,
ich vermute mal Du möchtest die erste Zahl nicht getrennt haben?
Tabelle1
 ABC
1ABCD EF GH 0123 456  123456
2AA BB CDEFG 34677  34677

verwendete Formeln
Zelle Formel Bereich
C1 {=TEIL(WECHSELN(A1;" ";"");VERGLEICH(WAHR;ISTZAHL(TEIL(WECHSELN(A1;" ";"");SPALTE(1:1);1)*1);0);LÄNGE(WECHSELN(A1;" ";"")))*1} $C$1
C2 {=TEIL(WECHSELN(A2;" ";"");VERGLEICH(WAHR;ISTZAHL(TEIL(WECHSELN(A2;" ";"");SPALTE(2:2);1)*1);0);LÄNGE(WECHSELN(A2;" ";"")))*1} $C$2
{} Matrixformel mit Strg+Umschalt+Enter abschließen
Matrixformeln sind durch geschweifte Klammern {} eingeschlossen
Diese Klammern nicht eingeben!!


Tabellendarstellung in Foren Version 6.01 Eigene Version



Anzeige
AW: Zahl aus String extrahieren
18.07.2012 17:10:03
Dieter(Drummer)
Danke Hajo für schnelle Rückmeldung.
Habe mal eine Musterdatei anbei. Das Ergebnis aus A1 soll 0123 456, wenn es möglich ist und eine gültige Zahl sein:
https://www.herber.de/bbs/user/81071.xls
Danke für weitere Hilfe.
Gruß, Dieter(Drummer)
Anzeige
AW: Zahl aus String extrahieren
18.07.2012 17:12:13
Hajo_Zi
Hallo Dieter,
Das geht nicht. "0123 456" ist keine Zahl, sondern Text. Es sei den Du möchtest es in zwei Zellen verteilen?

AW: Zahl aus String extrahieren
18.07.2012 17:36:58
silex1
Hallo,
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDE
1ABCD EF GH 0123 456 #WERT!Ergebnis soll:0123 456
2AA BB CDEFG 34677 34677 34677
3ab c de fgh 123456789 123456789 123456789
4ab cd ef g h i jk 123 123 123

ZelleFormel
E1{=TEIL(A1;VERGLEICH(1;--ISTZAHL(--TEIL(A1;SPALTE($1:$1);1)););99)}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.

Das Ergebnis wird aber immer Text sein!!!
VG René
Anzeige
Soso, Text!? Wie wär's mit Nachbehandlung?
18.07.2012 17:54:38
Luc:-?
Mit 1 multiplizieren und ein entsprechendes Zellformat setzen, Leute!
Allerdings müssten hierbei alle Stellen angegeben wdn, was bei unterschiedl Zahl-Länge natürl ein Problem ist, sonst für E1: 0000\ 000
Gruß Luc :-?
AW: Danke Hajo, Silex1 und René ...
18.07.2012 18:03:11
Dieter(Drummer)
... habt mir alle sehr geholfen. Werde mir dazu weitere Gedanken machen und hilft mir aber schon weiter.
Danke und
Gruß, Dieter(Drummer)
Anzeige
Silex1 und René sind identisch! ;-> owT
18.07.2012 18:24:08
Luc:-?
:-?
AW: Meinen Dank auch an Luc:? owT
18.07.2012 19:27:40
Dieter(Drummer)
.
...oh man...Luc?
18.07.2012 18:43:33
silex1
...denn die Textlängen verbietet eine Nachbehandlung!
Wurde ja auch gut von Dir begründet!!!
VG, Rene
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zahlen aus einem String in Excel extrahieren


Schritt-für-Schritt-Anleitung

Um Zahlen aus einem String in Excel zu extrahieren, kannst du verschiedene Methoden anwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung, um die Excel-Zahl aus Text zu extrahieren:

  1. Datenvorbereitung: Stelle sicher, dass deine Daten in einer Tabelle eingegeben sind. Zum Beispiel in Spalte A.
  2. Formel eingeben: Verwende die folgende Matrixformel, um die Zahlen zu extrahieren. Angenommen, die Zeichenfolge steht in Zelle A1:
    =TEIL(A1;VERGLEICH(WAHR;ISTZAHL(TEIL(A1;SPALTE(1:1);1)*1);0);LÄNGE(A1))*1
  3. Matrixformel aktivieren: Drücke Strg + Umschalt + Enter, um die Matrixformel zu aktivieren. Die Formel wird in geschweifte Klammern {} angezeigt.
  4. Zelle kopieren: Ziehe die Zelle nach unten, um die Formel auf die anderen Zellen anzuwenden.

Häufige Fehler und Lösungen

  • Fehler: #WERT!: Dies geschieht häufig, wenn die Formel nicht korrekt eingegeben wurde oder die Zelle keine Zahlen enthält. Überprüfe die Eingabe und stelle sicher, dass die Daten gültig sind.

  • Lösung: Stelle sicher, dass du die Matrixformel mit Strg + Umschalt + Enter bestätigst, nicht nur mit Enter.

  • Fehler: Extraktion nicht wie erwartet: Wenn du die Zahlen nicht wie gewünscht extrahieren kannst, könnte es an Leerzeichen oder anderen nicht sichtbaren Zeichen liegen.

  • Lösung: Verwende die Funktion WECHSELN, um unerwünschte Leerzeichen zu entfernen:

    =TEIL(WECHSELN(A1;" "; ""); VERGLEICH(WAHR; ISTZAHL(TEIL(WECHSELN(A1;" "; ""); SPALTE(1:1); 1) * 1); 0); LÄNGE(WECHSELN(A1;" "; ""))) * 1

Alternative Methoden

Wenn du VBA bevorzugst, kannst du eine einfache Funktion schreiben, um die Zahl aus einem String in Excel zu extrahieren:

Function ExtractNumbers(ByVal inputString As String) As String
    Dim i As Integer
    Dim result As String
    result = ""

    For i = 1 To Len(inputString)
        If Mid(inputString, i, 1) Like "#" Then
            result = result & Mid(inputString, i, 1)
        End If
    Next i

    ExtractNumbers = result
End Function

Um diese Funktion zu verwenden, gib in einer Zelle ein:

=ExtractNumbers(A1)

Praktische Beispiele

Hier sind einige Beispiele, wie du Zahlen aus Text extrahieren kannst:

A (String) B (Ergebnis)
ABCD EF GH 0123 456 0123 456
AA BB CDEFG 34677 34677
ab c de fgh 123456789 123456789
ab cd ef g h i jk 123 123

Verwende die oben beschriebenen Formeln in Spalte B, um die entsprechenden Ergebnisse zu erhalten.


Tipps für Profis

  • Wenn du Zahlen aus einer Zelle extrahieren möchtest, aber sie nur temporär benötigst, kannst du die Ergebnisse in eine andere Zelle kopieren und dann als Werte einfügen, um die Formeln zu entfernen.

  • Nutze die Datenvalidierung, um sicherzustellen, dass nur gültige Eingaben in deinen Zellen akzeptiert werden. So kannst du Probleme mit unerwartetem Text vermeiden.

  • Kombiniere die Funktion TEXT mit den Extraktionsmethoden, um deine Ergebnisse in einem gewünschten Format darzustellen.


FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass die extrahierten Zahlen als Zahl und nicht als Text angezeigt werden? Um sicherzustellen, dass die Werte als Zahlen angezeigt werden, kannst du die Funktion WERT verwenden:

=WERT(TEIL(A1;...))

2. Was mache ich, wenn ich nur die ersten 3 Ziffern aus einem String extrahieren möchte? Du kannst die LINKS-Funktion verwenden, um nur die ersten N Ziffern zu extrahieren. Zum Beispiel:

=LINKS(ExtractNumbers(A1); 3)

3. Funktioniert das auch in Excel Online? Ja, die meisten Funktionen und Formeln funktionieren in Excel Online genauso wie in der Desktop-Version, solange du die Eingaben korrekt machst.

4. Gibt es eine Möglichkeit, Zahlen aus mehreren Zellen gleichzeitig zu extrahieren? Ja, du kannst die Formel in den Zellen nach unten ziehen oder die gesamte Spalte nutzen, um die Zahlen aus mehreren Zellen gleichzeitig zu extrahieren.

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