=TEXTVOR(A2;" ") liefert alles vor dem ersten Leerzeichen, also wird aus Ana Silva der Text Ana, und =TEXTNACH(A2;" ") liefert alles danach, Silva. Füll beide Formeln nach unten aus, und jeder volle Name ist auf zwei Spalten verteilt. TEXTVOR und TEXTNACH heißen in englischem Excel TEXTBEFORE und TEXTAFTER, und die Tabelle zeigt die englische Schreibweise, =TEXTBEFORE(A2," "). Du kannst die Formeln in der Tabelle auch deutsch eingeben, mit Semikolons: =TEXTVOR(A2;" ").
| A | B | C | |
|---|---|---|---|
| 1 | Full name | First | Last |
| 2 | Ana Silva | Ana | Silva |
| 3 | Ben Okafor | Ben | Okafor |
| 4 | Chen Wu | Chen | Wu |
| 5 | Dara Kelly | Dara | Kelly |
| 6 | Eli Novak | Eli | Novak |
=TEXTVOR(A2;" ")Ändere einen Namen in Spalte A, und die beiden Spalten ziehen mit. TEXTVOR, TEXTNACH und TEXTTEILEN brauchen Microsoft 365 oder Excel 2024. Die Variante mit LINKS und FINDEN für Excel 2021 und älter steht weiter unten.
TEXTTEILEN: eine Zelle in Spalten teilen
=TEXTTEILEN(A2;" ") (englisch TEXTSPLIT) schneidet den Text an jedem Leerzeichen und verteilt jedes Stück in eine eigene Zelle. Eine Formel füllt so viele Spalten, wie es Stücke gibt:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Text | ||||
| 2 | Ana Maria Silva | Ana | Maria | Silva | |
| 3 | Paris, Lyon, Nice | Paris | Lyon | Nice |
=TEXTTEILEN(A2;" ")- Das Trennzeichen darf länger als ein Zeichen sein:
", "teilt an einem Komma mit folgendem Leerzeichen, also haben die Stücke kein Leerzeichen am Anfang. - Lass Platz für das Ergebnis. Ist eine Zelle rechts davon nicht leer, zeigt die Formel stattdessen #ÜBERLAUF! (englisch #SPILL!); die Tabelle zeigt die englischen Fehlernamen.
- Die Stücke sind immer Text, auch Ziffern, also überspringt SUMME sie. Setz zwei Minuszeichen davor,
=--TEXTTEILEN(A2;","), wenn du Zahlen brauchst.
Das dritte Argument ist ein Zeilentrennzeichen. Mit beiden baut TEXTTEILEN aus einer Zelle eine kleine Tabelle: Kommas trennen die Spalten und Semikolons die Zeilen.
| A | B | |
|---|---|---|
| 1 | Teams | |
| 2 | Ana,Red;Ben,Blue;Chen,Green | |
| 3 | ||
| 4 | Ana | Red |
| 5 | Ben | Blue |
| 6 | Chen | Green |
=TEXTTEILEN(A2;",";";")Zwei weitere Formen, die in Excel funktionieren, hier als Text in englischer Schreibweise:
=TEXTSPLIT(A2,,", ") one piece per row: the column delimiter is left out
=TEXTSPLIT(A2,{";",","}) several delimiters in braces: splits at ; or ,
Die erste macht aus excel, formulas, text eine Spalte mit drei Zellen; so wird aus einer Liste, die in eine Zelle getippt wurde, eine Reihe von Zeilen. Die zweite macht aus red;green,blue die Stücke red, green, blue.
Zweite Vornamen und "Nachname, Vorname"
TEXTNACH(A2;" ") liefert alles nach dem ersten Leerzeichen, also bei Ana Maria Silva den Text Maria Silva. Um das letzte Wort zu bekommen, zählst du mit der Instanznummer -1 vom Ende. Bei Namen in der Form Silva, Ana teilst du stattdessen am Komma mit Leerzeichen:
| A | B | C | |
|---|---|---|---|
| 1 | Full name | First | Last |
| 2 | Ana Maria Silva | Ana | Silva |
| 3 | Ben Okafor | Ben | Okafor |
| 4 | Chen Li Wu | Chen | Wu |
| 5 | Cher | Cher | |
| 6 | |||
| 7 | Last, First | First | Last |
| 8 | Silva, Ana | Ana | Silva |
=TEXTNACH(A2;" ";-1)Fehlt das Trennzeichen, liefern TEXTVOR und TEXTNACH #NV (englisch #N/A), und ein Name aus einem Wort wie Cher hat kein Leerzeichen. Zeile 5 nutzt das sechste Argument, den Wert, der stattdessen geliefert wird: =TEXTVOR(A5;" ";;;;A5) liefert den ganzen Namen, und TEXTNACH(...;"") liefert eine leere Zelle.
| A | B | C | |
|---|---|---|---|
| 1 | User | Domain | |
| 2 | ana.silva@coddy.tech | ana.silva |
Du bist dran: Gib in C2 die Domain der E-Mail-Adresse aus A2 zurück: alles nach dem @.
Namen in älterem Excel trennen
Ohne TEXTVOR und TEXTNACH suchst du die Position des Leerzeichens mit FINDEN und schneidest mit LINKS, TEIL und RECHTS darum herum:
| A | B | C | |
|---|---|---|---|
| 1 | Full name | First | Last |
| 2 | Ana Silva | Ana | Silva |
| 3 | Ben Okafor | Ben | Okafor |
| 4 | Chen Wu | Chen | Wu |
=LINKS(A2;FINDEN(" ";A2)-1)FINDEN(" ";A2)ist die Position des Leerzeichens: 4 beiAna Silva.LINKS(A2;4-1)nimmt die 3 Zeichen davor.TEIL(A2;4+1;100)nimmt bis zu 100 Zeichen ab der Stelle nach dem Leerzeichen. 100 heißt nur "mehr als jeder Name";=RECHTS(A2;LÄNGE(A2)-FINDEN(" ";A2))liefert dasselbe Ergebnis mit genauer Länge.
Diese Formeln liefern #WERT! (englisch #VALUE!), wenn es kein Leerzeichen gibt. Pack sie in WENNFEHLER, =WENNFEHLER(LINKS(A2;FINDEN(" ";A2)-1);A2), um stattdessen die ganze Zelle zu liefern.
| A | B | |
|---|---|---|
| 1 | Code | Prefix |
| 2 | KT-1043-BLUE |
Du bist dran: Gib in B2 den Teil des Produktcodes vor dem ersten Bindestrich zurück, mit LINKS und FINDEN.
Text in Spalten und Blitzvorschau
Um eine Spalte einmalig ohne Formeln zu teilen:
- Markiere die Spalte mit den vollen Namen. Achte darauf, dass die Spalten rechts davon leer sind, denn Text in Spalten überschreibt sie.
- Daten > Text in Spalten.
- Wähle Getrennt, klick auf Weiter, setz das Häkchen bei Leerzeichen (oder Komma, oder tippe ein anderes Zeichen bei Andere) und klick auf Weiter.
- Das erste Stück ersetzt die vollen Namen. Um sie zu behalten, setzt du Ziel auf die leere Zelle rechts davon und klickst dann auf Fertig stellen.
Für ein Muster ist die Blitzvorschau schneller: Tippe Ana neben Ana Silva, drück die Eingabetaste, dann Strg+E oder Daten > Blitzvorschau, und Excel füllt die Vornamen der anderen Zeilen aus. Beide Werkzeuge schreiben feste Werte. Ändern sich die Namen später, ändert sich die Aufteilung nicht; eine Formel tut es.
Häufig gestellte Fragen
Wie trenne ich in Excel Vor- und Nachnamen?
Steht ein Name wie Ana Silva in A2, liefert =TEXTVOR(A2;" ") den Text Ana und =TEXTNACH(A2;" ";-1) den Text Silva, auch wenn es einen zweiten Vornamen gibt. In Excel 2021 und älter nimmst du für den Vornamen =LINKS(A2;FINDEN(" ";A2)-1).
Welche Excel-Versionen haben TEXTTEILEN?
TEXTTEILEN, TEXTVOR und TEXTNACH gibt es in Microsoft 365, Excel für das Web und Excel 2024. Excel 2021 und älter zeigen #NAME?; nimm dort LINKS, TEIL, RECHTS und FINDEN, oder Daten > Text in Spalten.
Wie teile ich in Excel eine Zelle beim Komma auf?
=TEXTTEILEN(A2;", ") verteilt jedes Stück in eine eigene Spalte. Willst du die Stücke in Zeilen, lässt du das Spaltentrennzeichen leer: =TEXTTEILEN(A2;;", ").
Warum liefert TEXTVOR #NV?
Das Trennzeichen kommt in der Zelle nicht vor, zum Beispiel bei einem einzelnen Namen ohne Leerzeichen. Gib für diesen Fall im sechsten Argument einen Wert an: =TEXTVOR(A2;" ";;;;A2) liefert die ganze Zelle, wenn es kein Leerzeichen gibt.