TEIL, FINDEN und SUCHEN: Text vor und nach einem Zeichen
Mit TEIL holst du Zeichen aus der Mitte eines Textes, FINDEN und SUCHEN sagen dir, an welcher Stelle ein Zeichen steht. Zusammen ziehen sie den Vornamen aus „Jana Weber“ oder die Domain aus einer E-Mail-Adresse, egal wie lang die Teile sind.
Kurz gesagt: =TEIL(A2;5;4) holt 4 Zeichen ab Position 5. =FINDEN("@";A2) liefert die Position des @. Text bis zum Zeichen: =LINKS(A2;FINDEN(" ";A2)-1). Text nach dem Zeichen: =TEIL(A2;FINDEN("@";A2)+1;LÄNGE(A2)).
Probier es gleich aus
Alle Artikelcodes sind gleich aufgebaut: drei Buchstaben, Bindestrich, vierstellige Nummer, Bindestrich, Länderkürzel. Die Nummer steht also immer an derselben Stelle.
Aufgabe Jeder Code hat den Aufbau Bereich-Nummer-Land. Hol in C2 die vierstellige Nummer aus der Mitte des Codes. Die Formel wird bis C7 ausgefüllt.
| A | B | C | |
|---|---|---|---|
| 1 | Artikelcode | Artikel | Nummer |
| 2 | BUE-4711-DE | Bürostuhl | |
| 3 | LAG-2093-AT | Regalboden | |
| 4 | VER-1185-CH | Versandkarton | |
| 5 | BUE-3320-DE | Schreibtischlampe | |
| 6 | LAG-5047-DE | Palettenregal | |
| 7 | VER-2716-AT | Luftpolsterfolie |
So sind TEIL, FINDEN und SUCHEN aufgebaut
| Funktion | Argumente | Beispiel mit A2 = „BUE-4711-DE“ |
|---|---|---|
| TEIL | Text; Erstes_Zeichen; Anzahl_Zeichen | =TEIL(A2;5;4) ergibt 4711 |
| FINDEN | Suchtext; Text; [Erstes_Zeichen] | =FINDEN("-";A2) ergibt 4 |
| SUCHEN | Suchtext; Text; [Erstes_Zeichen] | =SUCHEN("de";A2) ergibt 10 |
| LÄNGE | Text | =LÄNGE(A2) ergibt 11 |
TEIL zählt ab 1, das erste Zeichen hat also die Position 1. Verlangst du mehr Zeichen, als ab der Startposition übrig sind, gibt TEIL einfach den Rest zurück. FINDEN und SUCHEN liefern eine Zahl, die Position des ersten Treffers. Das optionale dritte Argument legt fest, ab welchem Zeichen gesucht wird.
FINDEN oder SUCHEN: der Unterschied
Beide Funktionen machen fast dasselbe. Es gibt nur zwei Unterschiede:
- Groß- und Kleinschreibung: FINDEN unterscheidet sie, SUCHEN nicht.
=FINDEN("de";A2)findet in „BUE-4711-DE“ nichts und liefert #WERT!,=SUCHEN("de";A2)liefert 10. - Platzhalter: SUCHEN versteht
?für genau ein beliebiges Zeichen und*für beliebig viele.=SUCHEN("M??er";A2)findet Meier, Maier, Mayer und Meyer. Suchst du ein echtes Fragezeichen oder Sternchen, schreib eine Tilde davor:~?. FINDEN kennt keine Platzhalter.
Bei Leerzeichen, @ oder Bindestrich ist es egal, welche du nimmst. Für Wörter, deren Schreibweise schwankt, ist SUCHEN meist die bessere Wahl.
Text bis zu einem Zeichen auslesen
Bei „Jana Weber“ steht das Leerzeichen an Position 5, bei „Alexander Brandt“ an Position 10. Mit einer festen Zahl in LINKS kommst du also nicht weit. Lass FINDEN die Position ermitteln und zieh 1 ab, denn das Leerzeichen selbst willst du nicht im Ergebnis haben:
=LINKS(A2;FINDEN(" ";A2)-1)
Aufgabe Die Vornamen sind unterschiedlich lang. Hol in C2 alles vor dem Leerzeichen heraus, also den Vornamen. Die Formel wird bis C7 ausgefüllt.
| A | B | C | |
|---|---|---|---|
| 1 | Name | Abteilung | Vorname |
| 2 | Jana Weber | Vertrieb | |
| 3 | Murat Kaya | Einkauf | |
| 4 | Alexander Brandt | Controlling | |
| 5 | Tom Schulz | Logistik | |
| 6 | Lena Hoffmann | Personal | |
| 7 | Eva Richter | Vertrieb |
Text nach einem Zeichen auslesen
Für den Teil hinter dem Zeichen startest du ein Zeichen nach dem Fund, also bei FINDEN plus 1. Als Anzahl nimmst du LÄNGE(A2). Das sind immer genug Zeichen, und TEIL hört am Ende des Textes von selbst auf. Wer lieber genau rechnet, nimmt RECHTS: Die Anzahl ist die Gesamtlänge minus die Position des Zeichens.
=TEIL(A2;FINDEN("@";A2)+1;LÄNGE(A2))=RECHTS(A2;LÄNGE(A2)-FINDEN("@";A2))
Aufgabe Hol in C2 die Domain aus der E-Mail-Adresse, also alles nach dem @. Die Formel wird bis C7 ausgefüllt.
| A | B | C | |
|---|---|---|---|
| 1 | Kunde | Domain | |
| 2 | j.weber@papierwerk.de | Papierwerk GmbH | |
| 3 | einkauf@buero-mueller.de | Büro Müller | |
| 4 | m.kaya@logistik-nord.com | Logistik Nord | |
| 5 | info@schreibwaren.at | Schreibwaren Huber | |
| 6 | l.hoffmann@druckhaus.ch | Druckhaus Keller | |
| 7 | service@office-team.net | Office Team |
Text zwischen zwei Zeichen
Sind die Teile eines Codes unterschiedlich lang, etwa „LAG-87-AT“ und „BUE-4711-DE“, suchst du beide Bindestriche. Den zweiten findest du, indem FINDEN erst hinter dem ersten zu suchen beginnt:
=TEIL(A2;FINDEN("-";A2)+1;FINDEN("-";A2;FINDEN("-";A2)+1)-FINDEN("-";A2)-1)
Die Startposition ist das Zeichen nach dem ersten Bindestrich. Die Anzahl ist der Abstand zwischen den beiden Bindestrichen minus 1. Das Ergebnis ist Text. Brauchst du eine Zahl zum Rechnen, multiplizier es mit 1 oder pack es in WERT.
Kürzer in Microsoft 365: TEXTVOR und TEXTNACH
In Microsoft 365 und Excel 2024 gibt es zwei Funktionen, die genau diese Aufgaben übernehmen. =TEXTVOR(A2;" ") liefert alles vor dem ersten Leerzeichen, =TEXTNACH(A2;"@") alles nach dem @. Mit einer negativen Zahl als drittem Argument zählen sie von hinten: =TEXTNACH(A2;"-";-1) gibt den Text nach dem letzten Bindestrich zurück. Arbeiten Kolleginnen und Kollegen mit älteren Versionen an derselben Datei, bleib bei TEIL und FINDEN, sonst sehen sie #NAME?.
Typische Fehler
#WERT! von FINDEN oder SUCHEN
Das gesuchte Zeichen kommt im Text nicht vor, zum Beispiel ein Name ohne Leerzeichen oder eine Adresse ohne @. Fang das mit WENNFEHLER ab: =WENNFEHLER(LINKS(A2;FINDEN(" ";A2)-1);A2). Bei FINDEN kann auch die Groß- und Kleinschreibung der Grund sein.
Ein Zeichen zu viel oder zu wenig
FINDEN liefert die Position des Zeichens selbst. Für den Teil davor brauchst du -1, für den Teil danach +1. Fehlt die Korrektur, hängt das Leerzeichen oder das @ mit im Ergebnis.
Leerzeichen am Anfang
Steht vor „Jana Weber“ ein Leerzeichen, findet FINDEN dieses zuerst und das Ergebnis ist leer. Bereinige die Daten vorher mit GLÄTTEN, mehr dazu auf der nächsten Seite.
TEIL, FINDEN und SUCHEN auf Englisch
In der englischen Excel-Version trennst du Argumente mit Komma. Aus =TEIL(A2;5;4) wird =MID(A2,5,4).
| Deutsch | Englisch |
|---|---|
| TEIL | MID |
| FINDEN, SUCHEN | FIND, SEARCH |
| LINKS, RECHTS, LÄNGE | LEFT, RIGHT, LEN |
| TEXTVOR, TEXTNACH | TEXTBEFORE, TEXTAFTER |
In welchen Excel-Versionen gibt es die Funktionen?
TEIL, FINDEN, SUCHEN, LINKS, RECHTS und LÄNGE gibt es in allen Excel-Versionen, auch in Excel für das Web und auf dem Mac. TEXTVOR und TEXTNACH gibt es nur in Microsoft 365 und Excel 2024. In Excel 2021 und älter fehlen sie.
Häufige Fragen
Wie prüfe ich, ob eine Zelle ein bestimmtes Wort enthält?
Mit =ISTZAHL(SUCHEN("rabatt";A2)). SUCHEN liefert eine Zahl, wenn das Wort vorkommt, sonst #WERT!. ISTZAHL macht daraus WAHR oder FALSCH. Das passt gut in WENN oder in eine bedingte Formatierung.
Wie finde ich das zweite Vorkommen eines Zeichens?
Lass FINDEN hinter dem ersten Treffer weitersuchen: =FINDEN("-";A2;FINDEN("-";A2)+1).
Wie bekomme ich den Text nach dem letzten Zeichen?
In Microsoft 365 und Excel 2024 am einfachsten mit =TEXTNACH(A2;"-";-1). In älteren Versionen ist die Formel deutlich länger. Wenn möglich, ist eine feste Struktur der Codes die bessere Lösung.
Warum rechnet SUMME nicht mit meinem Ergebnis aus TEIL?
TEIL liefert immer Text, auch wenn er wie eine Zahl aussieht. Mit =TEIL(A2;5;4)*1 oder =WERT(TEIL(A2;5;4)) wird eine echte Zahl daraus. Eine Übersicht aller Textfunktionen findest du bei den Textfunktionen.