SEARCH Fx - Substring in String suchen - Excel, VBA & G Sheets

Beispielarbeitsbuch herunterladen

Laden Sie die Beispielarbeitsmappe herunter

Dieses Tutorial zeigt, wie Sie die Excel-Suchfunktion in Excel, um die Position von Text innerhalb einer Zelle zu ermitteln.

Übersicht über die SEARCH-Funktion

Die SEARCH-Funktion findet ein Zeichen oder eine Textzeichenfolge und gibt ihre Position in der Zelle zurück. Groß-/Kleinschreibung wird nicht beachtet.

Um die Excel-Arbeitsblatt-Suchfunktion zu verwenden, wählen Sie eine Zelle aus und geben Sie Folgendes ein:

(Beachten Sie, wie die Formeleingaben angezeigt werden)

Suchfunktion Syntax und Eingaben:

=SUCHEN(find_text,innerhalb_text,start_num)

Text finden - Die Textzeichenfolge, die Sie suchen möchten.

innerhalb_text - Die ursprüngliche Textzeichenfolge.

start_num - OPTIONAL. Die Zeichennummer, ab der die Suche gestartet werden soll. Hinweis: Dies ändert nur den Suchbereich, es wirkt sich nicht auf die Zahl aus, die zurückgegeben wird, wenn eine Übereinstimmung gefunden wird. Beispiel: Die Suche nach „s“ in der Zeichenfolge „suns“ gibt standardmäßig 1 zurück, aber wenn start_num auf 2 gesetzt ist, wird 4 zurückgegeben.

Was ist die SEARCH-Funktion?

Die Excel-SUCHE-Funktion „sucht“ nach einer Textzeichenfolge innerhalb einer anderen Zeichenfolge. Wenn der Text gefunden wird, gibt SEARCH die numerische Position des Strings zurück.

Bei SEARCH wird die Groß-/Kleinschreibung NICHT beachtet. Das bedeutet, dass „text“ mit „TEXT“ übereinstimmt. Um Text mit Berücksichtigung der Groß-/Kleinschreibung zu durchsuchen, verwenden Sie stattdessen die FIND-Funktion <>.

So verwenden Sie die SEARCH-Funktion

Die Excel-Suchfunktion funktioniert wie folgt:

=SUCHEN("e", "Elefant")

Hier gibt Excel 1 zurück, da „e“ das erste Zeichen in „Elefant“ ist.

Unten sind noch ein paar Beispiele.

Startnummer (start_num)

Optional können Sie eine Startnummer (start_num) definieren. start_num teilt der SEARCH-Funktion mit, wo die Suche beginnen soll. Wenn Sie es leer lassen, beginnt die Suche beim ersten Zeichen.

=SUCHEN(B3,C3)

Setzen wir nun start_num auf 2, was bedeutet, dass SEARCH mit der Suche ab dem zweiten Zeichen beginnt.

=SUCHEN(B3,C3,D3)

In diesem Fall liefert SEARCH 3: die Position des zweiten „e“.

Wichtig: start_num hat keinen Einfluss auf den Rückgabewert, SEARCH beginnt immer mit dem ersten Zeichen zu zählen.

Startnummer (start_num) Fehler

Wenn Sie eine Startnummer verwenden, stellen Sie sicher, dass es sich um eine ganze positive Zahl handelt, die kleiner ist als die Länge der zu suchenden Zeichenfolge, andernfalls erhalten Sie eine Fehlermeldung. Sie erhalten auch eine Fehlermeldung, wenn Sie eine leere Zelle als Startnummer übergeben:

=SUCHEN(B3,C3,D3)

Erfolglose Suchen geben einen #VALUE zurück! Fehler

Wenn SEARCH den Suchwert nicht finden kann, gibt Excel einen #VALUE! Error.

Suche ohne Beachtung der Groß-/Kleinschreibung

Das folgende Beispiel zeigt, dass bei der Funktion SEARCH die Groß-/Kleinschreibung nicht beachtet wird. Wir haben nach „abc“ gesucht, aber SEARCH hat 1 zurückgegeben, weil es mit „ABC“ übereinstimmt.

Wildcard-Suche

Sie können bei SEARCH Platzhalter verwenden, die es Ihnen ermöglichen, nach nicht spezifizierten Zeichen zu suchen.

Ein Fragezeichen in Ihrem Suchtext bedeutet „beliebiges Zeichen“. „?000“ im Beispiel unten bedeutet also „Suche nach einem beliebigen Zeichen gefolgt von drei Nullen“.

Ein Sternchen bedeutet „beliebig viele unbekannte Zeichen“. Hier suchen wir nach „1*C“ und SEARCH gibt 2 zurück, weil es mit „1-ABC“ übereinstimmt.

Im nächsten Beispiel suchen wir nach „000?“ - das heißt „000“ gefolgt von einem beliebigen Zeichen. Wir haben „000“, aber es steht am Ende der Zeichenfolge und wird daher von keinen Zeichen gefolgt, daher erhalten wir einen Fehler

Wenn wir jedoch ein Sternchen anstelle eines Fragezeichens verwendet haben – also „000*“ statt „000?“, erhalten wir eine Übereinstimmung. Dies liegt daran, dass das Sternchen „beliebig viele Zeichen“ bedeutet – auch keine Zeichen.

So teilen Sie Vor- und Nachnamen aus einer Zelle mit SEARCH

Wenn Sie Vor- und Nachnamen in derselben Zelle haben und ihnen jeweils eine Zelle zuweisen möchten, können Sie dafür SEARCH verwenden - aber Sie müssen auch einige andere Funktionen verwenden.

Den Vornamen bekommen

Die Excel-Funktion LINKS gibt eine bestimmte Anzahl von Zeichen aus einem String zurück, beginnend von links.

Wenn wir SEARCH verwenden, um die Position des Leerzeichens zwischen Vor- und Nachname zurückzugeben, ziehen wir 1 davon ab, wir wissen, wie lang der Vorname ist. Dann können wir das einfach an LINKS weitergeben.

Die Formel für den Vornamen lautet:

=LINKS(B3,SUCHE(“ “,B3)-1)

Den Nachnamen bekommen

Die Excel-Funktion RECHTS gibt eine bestimmte Anzahl von Zeichen rechts von einer Zeichenfolge zurück.

Um eine Anzahl von Zeichen zu erhalten, die der Länge des Nachnamens entspricht, verwenden wir SEARCH, um uns die Position des Leerzeichens mitzuteilen, und ziehen dann diese Zahl von der Gesamtlänge der Zeichenfolge ab - die wir mit LEN erhalten können.

Die Formel für den Nachnamen lautet:

=RECHTS(B3,LEN(B3)-SUCHE(“ “,B3))

Beachten Sie, dass, wenn Ihre Namensdaten zweite Vornamen enthalten, der zweite Vorname in die Zelle "Nachname" aufgeteilt wird.

Verwenden von SEARCH, um das n-te Zeichen in einer Zeichenfolge zurückzugeben

Wie oben erwähnt, gibt SEARCH die Position der ersten gefundenen Übereinstimmung zurück. Aber wenn wir es mit CHAR und SUBSTITUTE kombinieren, können wir es verwenden, um spätere Vorkommen eines Zeichens zu finden, z. B. die zweite oder dritte Instanz.

Hier ist die Formel:

=SUCHEN(CHAR(134),ERSETZEN(D3,C3,CHAR(134),B3))

Es mag auf den ersten Blick etwas kompliziert aussehen, also lass es uns aufschlüsseln:

  • Wir verwenden SEARCH und die gesuchte Zeichenfolge ist "CHAR(134)". CHAR gibt ein Zeichen basierend auf seinem ASCII-Code zurück. CHAR(134) ist ein Dolchsymbol - Sie können hier alles verwenden, solange es nicht in Ihrer tatsächlichen Zeichenfolge vorkommt.
  • SUBSTITUTE durchläuft einen String und ersetzt ein Zeichen oder einen Teilstring durch einen anderen. Hier ersetzen wir den gesuchten String (der sich in C3 befindet) durch CHAR(134). Der Grund dafür ist, dass der vierte Parameter von SUBSTITUTE die Instanznummer ist, die wir in B3 gespeichert haben.
  • SUBSTITUTE tauscht also das n-te Zeichen in der Zeichenfolge gegen das Dolchsymbol aus, und dann gibt SEARCH die Position davon zurück.

So sieht es aus:

Den mittleren Abschnitt einer Zeichenfolge finden

Stellen Sie sich vor, Sie haben viele Seriennummern mit folgendem Format:

AB1XCDC-1BB/BB99

Sie wurden gebeten, den mittleren Abschnitt jedes einzelnen herauszuziehen. Anstatt dies von Hand zu tun, können Sie SEARCH mit MID kombinieren, um diese Aufgabe zu automatisieren.

Die MID-Excel-Funktion gibt einen Teil einer Zeichenfolge zurück. Seine Eingaben sind eine Textzeichenfolge, ein Startpunkt und eine Anzahl von Zeichen.

Da der gewünschte Startpunkt das Zeichen nach dem Bindestrich ist, können wir mit SEARCH die Position des Bindestrichs ermitteln und 1 hinzufügen. Wenn die Seriennummer in B3 wäre, würden wir Folgendes verwenden:

=SUCHEN("-",B3)+1

Um die Anzahl der Zeichen zu erhalten, die wir hier herausziehen möchten, können wir die Suche verwenden, um die Position des Schrägstrichs zu ermitteln, die Position des Bindestrichs subtrahieren und dann 1 subtrahieren, um sicherzustellen, dass wir den Schrägstrich selbst nicht zurückgeben:

=SUCHE("/",B3)-SUCHE("-",B3)-1

Dann stecken wir einfach diese beiden Formeln in MID:

SUCHEN vs. FINDEN

SEARCH und FIND sind ähnliche Funktionen. Beide geben die Position eines bestimmten Zeichens oder einer Teilzeichenfolge innerhalb einer anderen Zeichenfolge zurück. Es gibt jedoch zwei wesentliche Unterschiede:

  • Bei FINDEN wird die Groß-/Kleinschreibung beachtet, bei SUCHEN jedoch nicht
  • FIND lässt keine Platzhalter zu, SEARCH hingegen schon

Nachfolgend sehen Sie einige Beispiele für diese Unterschiede:

SUCHE in Google Tabellen

Die SEARCH-Funktion funktioniert in Google Sheets genauso wie in Excel:

Zusätzliche Bemerkungen

Die SEARCH-Funktion ist eine Version der FIND-Funktion, bei der die Groß-/Kleinschreibung nicht beachtet wird. SEARCH unterstützt auch Platzhalter. Find nicht.

SEARCH-Beispiele in VBA

Sie können auch die SUCHE-Funktion in VBA verwenden. Typ:
application.worksheetfunction.search(find_text,within_text,start_num)
Für die Funktionsargumente (find_text usw.) können Sie diese entweder direkt in die Funktion eingeben oder stattdessen Variablen definieren.

Zurück zur Liste aller Funktionen in Excel

wave wave wave wave wave