Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

String nach Zeichen von hinten druchsuchen

Forumthread: String nach Zeichen von hinten druchsuchen

String nach Zeichen von hinten druchsuchen
22.06.2007 09:12:00
hinten
Hallo zusammen,
ich habe mal eine Frage die das Durchsuchen eines Textstrings betrifft.
Bsp ich habe einen String wo Informationen in 2 Klammern stehen. Nun möchte ich aber immer nur die Information aus der 2. Klammer auslesen. Dies ist aber nicht möglich wenn man mit "Instr"nach z.B."(" sucht, da der Suchmechanismus immer von links nach rechts sucht. Gibt es eine Möglichkeit ihn auch von Hinten nach Vorne suchen zu lassen?
Danke schonmal im Vorraus
Gruß
Paul

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: String nach Zeichen von hinten druchsuchen
22.06.2007 09:17:47
hinten
Hi,
das geht mit InStrRev.
Damit wird das erste Auftreten des gesuchten Zeichens von hinten ermittelt.
Rückgabewert ist aber trotzdem der Index von vorne gerechnet,
MsgBox InStrRev("aababa", "b")
ergibt also nicht 2 sondern 5.
Schönen Gruß,
Andi

AW: String nach Zeichen von hinten druchsuchen
22.06.2007 09:18:00
hinten
Hi Paul,
schau mal in der Hilfe zu InstRev.
________________________________________

Anzeige
AW: String nach Zeichen von hinten druchsuchen
22.06.2007 09:19:56
hinten
Mazwara Paul,
Seit EXCEL 2000 gibt es dafür
InStrRev( funktioniert gleich wie Instr nur von hinten nach vorn.
Greetz Renee

Danke Euch!
22.06.2007 09:32:04
Paul
Danke für die zahlreichen Antworten :)
Hätt ich ja auch wirklich mal selber drauf kommen können /slap ;)
Gruß
Paul
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

String nach Zeichen von hinten durchsuchen in Excel


Schritt-für-Schritt-Anleitung

Um einen string von hinten nach einem bestimmten Zeichen zu durchsuchen, kannst du die Funktion InStrRev in VBA verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und gehe zu den Entwicklertools. Wenn diese nicht sichtbar sind, aktiviere sie über die Excel-Optionen.

  2. Öffne den VBA-Editor mit ALT + F11.

  3. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" wählst.

  4. Schreibe den folgenden Code:

    Sub SucheVonHinten()
       Dim text As String
       Dim position As Long
    
       text = "Hier ist ein Beispiel (erste Klammer) (zweite Klammer)"
       position = InStrRev(text, "(")
    
       MsgBox "Die Position der zweiten Klammer ist: " & position
    End Sub
  5. Führe das Skript aus, indem du F5 drückst. Es zeigt die Position der zweiten Klammer im Text an.


Häufige Fehler und Lösungen

  • Fehler: InStrRev gibt die falsche Position zurück.

    • Lösung: Stelle sicher, dass du die Funktion korrekt benutzt. Beachte, dass die Position, die zurückgegeben wird, von vorne gezählt ist, nicht von hinten.
  • Fehler: Der Code funktioniert nicht in Deiner Excel-Version.

    • Lösung: InStrRev ist seit Excel 2000 verfügbar. Stelle sicher, dass Du eine kompatible Version verwendest.

Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du auch die Textfunktionen in Excel verwenden:

  1. Verwende =FINDEN("(","A1") für die erste Klammer.
  2. Um die Position von hinten zu ermitteln, kannst du die Länge des Strings minus die Position der ersten Klammer verwenden.

Beispiel:

=LÄNGE(A1) - FINDEN("(",A1) + 1

Praktische Beispiele

Hier sind einige Beispiele, wie du InStrRev verwenden kannst:

  1. Beispiel 1: Suche nach dem letzten Komma in einem Text.

    position = InStrRev("Dies ist, ein Text, mit, mehreren, Kommas", ",")
  2. Beispiel 2: Finde die letzte Zahl in einem String.

    position = InStrRev("123abc456", "6")

Diese Beispiele helfen dir, die Funktion in verschiedenen Kontexten anzuwenden.


Tipps für Profis

  • Nutze InStrRev in Kombination mit anderen Funktionen wie Mid oder Left, um spezifische Teile des Strings zu extrahieren.
  • Experimentiere mit verschiedenen Zeichen, um die Flexibilität von InStrRev zu testen.

FAQ: Häufige Fragen

1. Was ist der Hauptunterschied zwischen InStr und InStrRev?
InStr sucht von links nach rechts, während InStrRev von rechts nach links sucht.

2. Kann ich InStrRev auch in Excel-Formeln verwenden?
Nein, InStrRev ist eine VBA-Funktion und kann nicht direkt in Excel-Formeln verwendet werden. Du musst VBA verwenden, um diese Funktion zu nutzen.

3. Gibt es eine Alternative zu InStrRev, wenn ich kein VBA benutzen möchte?
Ja, du kannst die Kombination von FINDEN und LÄNGE in Excel nutzen, um ähnliche Ergebnisse zu erzielen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige