Wie extrahiert man nur Zahlen aus einer Textzeichenfolge in Excel?
Beim Arbeiten mit Excel können Situationen auftreten, in denen Sie Zahlen aus Textzeichenfolgen extrahieren müssen. Unabhängig davon, ob sich die Zahlen am Anfang, am Ende oder innerhalb des Textes befinden, bietet Excel verschiedene Methoden, um dies zu erreichen. Dieser Leitfaden untersucht verschiedene Methoden zur Handhabung unterschiedlicher Szenarien, einschließlich des Extrahierens von Dezimalzahlen, Zahlen aus bestimmten Positionen oder Zahlen vom Anfang oder Ende einer Zeichenfolge.
Zahlen von jeder Position aus einer Textzeichenfolge extrahieren
Nur Dezimalzahl aus einer Textzeichenfolge extrahieren
Zahl vom Ende einer Textzeichenfolge extrahieren
Zahl vom Anfang einer Textzeichenfolge extrahieren
Zahlen von jeder Position aus einer Textzeichenfolge extrahieren
Um Ihnen zu helfen, Zahlen von jeder Position innerhalb einer Textzeichenfolge zu extrahieren, werden wir mehrere praktische und effiziente Methoden vorstellen.
♦ Zahlen von jeder Position aus einer Textzeichenfolge mit Formeln extrahieren
Die folgenden Formeln können Ihnen helfen, die Zahlen aus den Textzeichenfolgen zu extrahieren, bitte gehen Sie wie folgt vor:
Wählen Sie eine leere Zelle aus, in der Sie die extrahierte Zahl ausgeben möchten, geben Sie dann eine der folgenden Formeln ein und ziehen Sie die Formel in andere Zellen. Siehe Screenshot:
● Alle Excel-Versionen:
=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")
● Excel 365 oder Excel 2021 und spätere Versionen:
=TEXTJOIN("", TRUE, IFERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1, ""))
♦ Zahlen von jeder Position aus einer Textzeichenfolge mit Formeln extrahieren
Kutools für Excel bietet eine schnelle und benutzerfreundliche Möglichkeit, Zahlen aus Textzeichenfolgen zu extrahieren, ohne sich an eine Formel erinnern zu müssen, was Ihnen hilft, Zeit zu sparen und Ihren Arbeitsablauf zu optimieren. So geht’s.
- Klicken Sie auf Kutools > Text > Text extrahieren, siehe Screenshot:
- Im Text extrahieren Dialogfeld führen Sie die folgenden Schritte aus:
(1.) Wählen Sie die Datenliste aus, aus der Sie Zahlen extrahieren möchten;
(2.) Wählen Sie Zahlen extrahieren Option;
(3.) Aktivieren Sie nach Bedarf die Option Als Formel einfügen Option;
(4.) Klicken Sie abschließend auf die OK Schaltfläche.
- Im folgenden Dialogfeld wählen Sie eine Zelle aus, um das extrahierte Ergebnis auszugeben, siehe Screenshot:
- Klicken Sie auf OK, alle Zahlen aus jeder Zelle werden auf einmal extrahiert. Siehe Screenshot:
♦ Zahlen von jeder Position aus einer Textzeichenfolge mit VBA-Code extrahieren
Hier ist ein VBA-Code, der Ihnen ebenfalls helfen kann, bitte gehen Sie wie folgt vor:
- Halten Sie die Tasten Alt + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
- Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code im Modul Fenster ein.
VBA-Code: Nur Zahlen aus einer Textzeichenfolge extrahieren:Sub ExtrNumbersFromRange() Dim xRg As Range Dim xDRg As Range Dim xRRg As Range Dim nCellLength As Integer Dim xNumber As Integer Dim strNumber As String Dim xTitleId As String Dim xI As Integer xTitleId = "KutoolsforExcel" Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8) If TypeName(xDRg) = "Nothing" Then Exit Sub Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8) If TypeName(xRRg) = "Nothing" Then Exit Sub xI = 0 strNumber = "" For Each xRg In xDRg xI = xI + 1 nCellLength = Len(xRg) For xNumber = 1 To nCellLength If IsNumeric(Mid(xRg, xNumber, 1)) Then strNumber = strNumber & Mid(xRg, xNumber, 1) End If Next xNumber xRRg.Item(xI) = strNumber strNumber = "" Next xRg End Sub
- Drücken Sie anschließend die F5 Taste, um diesen Code auszuführen, und ein Dialogfeld erscheint, das Sie daran erinnert, den gewünschten Textrahmen auszuwählen, siehe Screenshot:
- Klicken Sie dann auf OK, ein weiteres Dialogfeld erscheint, bitte wählen Sie eine Zelle aus, um das Ergebnis auszugeben, siehe Screenshot:
- Klicken Sie abschließend auf die OK-Schaltfläche, und alle Zahlen in den ausgewählten Zellen wurden auf einmal extrahiert.
Nur Dezimalzahl aus einer Textzeichenfolge extrahieren
Wenn die Textzeichenfolgen in Ihrer Arbeitsmappe einige Dezimalzahlen enthalten, wie könnten Sie nur die Dezimalzahlen aus den Textzeichenfolgen extrahieren?
Die folgende Formel kann Ihnen helfen, die Dezimalzahlen schnell und einfach aus den Textzeichenfolgen zu extrahieren.
Kopieren und fügen Sie eine der folgenden Formeln in eine leere Zelle ein, und ziehen Sie den Ausfüllkursor nach unten in die Zellen, die diese Formel enthalten sollen, alle Dezimalzahlen werden aus den Textzeichenfolgen extrahiert.
● Alle Excel-Versionen:
=LOOKUP(9.9E+307,--LEFT(MID(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0}, $A2&"1023456789")),999),ROW(INDIRECT("1:999"))))
● Excel 365:
=REGEXEXTRACT(A2,"[\d.]+")
Zahl vom Ende einer Textzeichenfolge extrahieren
Beim Arbeiten mit Textzeichenfolgen in Excel müssen Sie möglicherweise Zahlen extrahieren, die sich am Ende der Zeichenfolge befinden. Um Zahlen am Ende einer Zeichenfolge zu isolieren, kann Ihnen die folgende Formel helfen.
Kopieren und fügen Sie die folgende Formel in eine leere Zelle ein, drücken Sie Strg + Umschalt + Enter, um das erste Ergebnis zu erhalten:
=RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)))
Ziehen Sie dann den Ausfüllkursor nach unten, um diese Formel in andere Zellen zu übertragen. Diese Formel extrahiert Zahlen ausschließlich vom Ende der Textzeichenfolge und ignoriert alle Zahlen, die am Anfang oder in der Mitte erscheinen. Siehe Screenshot:
Zahl vom Anfang einer Textzeichenfolge extrahieren
Um Zahlen vom Anfang einer Textzeichenfolge zu extrahieren, verwenden Sie bitte die folgende Formel.
Kopieren und fügen Sie die folgende Formel in eine leere Zelle ein, drücken Sie Strg + Umschalt + Enter, um das erste Ergebnis zu erhalten:
=LEFT(A2, MATCH(FALSE, ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2)+1)), 1) *1), 0) -1)
Ziehen Sie dann den Ausfüllkursor nach unten, um diese Formel in andere Zellen zu übertragen, nur die Startnummer wird extrahiert. Siehe Screenshot:
Das Extrahieren von Zahlen aus Textzeichenfolgen ist eine häufige Aufgabe in Excel, und es gibt mehrere effektive Methoden, dies zu erreichen, abhängig von Ihren Anforderungen und der Komplexität Ihrer Daten. Wenn Sie an weiteren Excel-Tipps und -Tricks interessiert sind, bietet unsere Website Tausende von Tutorials.
Verwandte Artikel:
Beste Büroproduktivitätswerkzeuge
Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
- Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!