Wie Zeichenfolge aus Text suchen?

Hallo,

ich habe in einem Excel-File Hyperlinks von Dateien auf einem Laufwerk eingefügt, sieht etwa so aus:

\Laufwerkname\Ordner1\Ordner2\Ordner3\Ordner4\Dateiname.typ

Die Ordner 1 und 2 bleiben dabei ständig gleich, also die Zeichenlänge ist immer dieselbe, die weiteren Ordner haben aber unterschiedlich (lange) Bezeichnungen.

Jetzt möchte ich gerne in einer nebenstehenden Zelle den Namen eines Ordners extrahieren, zB soll dann in einer Zelle „Ordner3“ stehen. Mit welcher Formel geht das? Mit TEIL kann ich nur den Anfang festlegen, aber nicht das Ende - das heißt ich bräuchte einen Befehl, um festzulegen, dass er mir alle Zeichen zwischen den beiden -Zeichen suchen soll - wie stell ich das an?

Freundliche Grüße

Jerry

Servus Jerry

Beispiel:
A1 = „C:\Ordner1\Ordner2\Ordner3\Ordner4\Dateiname.typ“.
B1 = TEIL(A1;20;FINDEN("";A1;20)-20)
In B1 steht dann als Ergebnis „Ordner3“.

Erklärung:
Die Funktion TEIL kennst du ja schon.
Für die Längenangabe in der TEIL-Funktion habe ich die Funktion FINDEN verwendet.

Die FINDEN-Funktion hat folgende Parameter:

  1. String, der gesucht werden soll (in diesem Fall „“)
  2. Text, der nach diesem String durchsucht werden soll (in diesem Fall die Zelle A1)
  3. Position, ab der im Text gesucht werden soll.

Die Position, ab der gesucht werden soll, ist ja bekannt (in diesem Fall 20) und mit der FINDEN-Funktion wird das 1. „“ nach der 20. Position gefunden.

Vom Ergebnis der FINDEN-Funktion müssen dann natürlich noch die 20 abgezogen werden, weil ja der Teilstring erst ab der 20. Position gesucht ist.

MfG
Roland

\Laufwerkname\Ordner1\Ordner2\Ordner3\Ordner4\Dateiname.typ

Die Ordner 1 und 2 bleiben dabei ständig gleich, also die
Zeichenlänge ist immer dieselbe, die weiteren Ordner haben
aber unterschiedlich (lange) Bezeichnungen.

Jetzt möchte ich gerne in einer nebenstehenden Zelle den Namen
eines Ordners extrahieren, zB soll dann in einer Zelle
„Ordner3“ stehen. Mit welcher Formel geht das? Mit TEIL kann
ich nur den Anfang festlegen, aber nicht das Ende - das heißt
ich bräuchte einen Befehl, um festzulegen, dass er mir alle
Zeichen zwischen den beiden -Zeichen suchen soll - wie stell
ich das an?

Hi Jerry,

allgemeiner:

in A1: \Ordner1\Ordner2…\OrnderN\Datei
in B1 => Ordner1
in C1 => Ordner2

Für Ordner1:
=TEIL(A1;FINDEN("\";A1)+2;-FINDEN("\";A1)-2+FINDEN("";A1;FINDEN("\";A1)+2))
(ginge bei Dir natürlich schneller, aber ist allgemeiner)

Für Ordner2-N:
=WENN(ISTFEHLER(TEIL($A$1;FINDEN(B1;$A$1)+LÄNGE(B1)+1;-FINDEN(B1;$A$1)-LÄNGE(B1)-1+FINDEN("";$A$1;FINDEN(B1;$A$1)+LÄNGE(B1)+1)));"";TEIL($A$1;FINDEN(B1;$A$1)+LÄNGE(B1)+1;-FINDEN(B1;$A$1)-LÄNGE(B1)-1+FINDEN("";$A$1;FINDEN(B1;$A$1)+LÄNGE(B1)+1)))

Nicht lachen:smile:

Also: Wenn(…) fängt #Wert-Fehler ab, falls keine N-Ordner vorhanden sind sondern nur N-M
Ab Teil sucht anhand der links benachbarten Zelle den nächsten Ordner.

Einschränkung Ordner1!=OrnderX für beliebige X, ansonsten hast Du ein Problem damit.
(Könnte ggf. behoben werden über Addition von z.B. B1&""&C1 im Suchstring für die Anfangsposition)

Grüße
Jürgen

Hervorragend!
Hallo,

herzlichen Dank für die Ausführungen, funktioniert bestens!

Gibt ja doch wahre Excelfreaks hier!:wink:

Freundliche Grüße, Jerry