Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1156to1160
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Teilstring auslesen

Teilstring auslesen
GEGA
Hallo miteinander,
ich kämpfe mal wieder mit folgendem Problem bei dem ich nicht weiterkomme:
Aus der Kurzbeschreibung möchte ich gerne die Typenbezeichnung herausfiltern:
Bsp:
Spalte M1 steht folgender Text: Casio G-Shock =SPEED STEELER= G-7700-1ER
Spalte M2 steht folgender Text: Casio White Waver G-Shock GLX-5600-7ER, weiss
Spalte M3 steht folgender Text: Casio GA-100-1A1ER black-invers-black
usw......
Das Suchkritrium für die Typenbezeichnung in A1, A2 usw ist immer eine zusammenhängendes Wort unterschiedlicher Länge mit zwei Bindstrichen
Ergebnis in A1 aus M1 wäre also G-7700-1ER
Ergebnis in A2 aus M2 wäre also GLX-5600-7ER notfalls auch GLX-5600-7ER,
Ergebnis in A3 aus M3 wäre also GA-100-1A1ER
Als erstes Suchkriterium das "-" geht auch nicht, da es bereits in einem Wort der Kurzbeschreibung vorkommen kann.
Ganz schön kniffelig :-)
Hat jemand eine Idee vielleicht als Formel?
Viele Grüsse
Gerhard

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

Betreff
Benutzer
Anzeige
Mit RegEx ?
20.05.2010 17:46:03
ransi
HAllo
Packe diesen Code mal in ein Modul:
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit


Public Function machs(strText) As String
Dim Regex As Object
Set Regex = CreateObject("Vbscript.Regexp")
With Regex
    .Pattern = "[A-Z]+\-[0-9]+\-[A-Z0-9]+\b"
    machs = .Execute(strText)(0)
End With
End Function


Dein Excel kennt jetzt eine neue Funktion. ;-)
Die kannst du jetzt nutzen wie jede andere Funktion auch.
 ABCDEFGHIJKLM
1G-7700-1ER           Casio G-Shock =SPEED STEELER= G-7700-1ER
2GLX-5600-7ER           Casio White Waver G-Shock GLX-5600-7ER, weiss
3GA-100-1A1ER           Casio GA-100-1A1ER black-invers-black
4             

Formeln der Tabelle
ZelleFormel
A1=machs(M1)
A2=machs(M2)
A3=machs(M3)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
ransi
Anzeige
AW: Mit RegEx ?
20.05.2010 17:58:16
Christian
Hallo ransi,
kannst Du mir VBA-DAU bitte mal die Logik erklären, wo ist der Ansatz bei der Regel zum Auslesen?
Dank im Voraus
MfG Christian
AW: Mit RegEx ?
20.05.2010 18:08:26
ransi
HAllo
Keine Ahnung ob ich die Frage richtig interprtiert habe, aber ich habs so verstanden:
1 oder mehrere GROSSBUCHSTABEN & "-" & 1 oder mehrere Zahlen & "-" & 1 oder mehrere GROSSBUCHSTABEN oder Zahlen & 1 Wortgrenze
[A-Z]+=1 oder mehrere GROSSBUCHSTABEN
\-=1 "-"
[0-9]+= 1 oder mehrere Zahlen
\- =1 "-"
[A-Z0-9]+= 1 oder mehere GROSSBUCHSTABEN oder Zahlen
\b = Wortgrenze
Das alles zusammen gestückelt gibt so ein Pattern:
.Pattern = "[A-Z]+\-[0-9]+\-[A-Z0-9]+\b"
ransi
Anzeige
AW: Mit RegEx ?
20.05.2010 18:26:20
Christian
Hallo Ransi,
danke für die Erklärung, darauf muss man erst mal kommen ;-)
MfG Christian

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige