Zeichenfolgen trennen ("StringParser")

19.05.2001


Stellen Sie sich vor, Sie haben importierte Daten,
die sich in einer einzigen Zelle mit Semikolons getrennt sind.
Sie ben�tigen aus dieser Zeichenfolge jedoch nur den dritten Wert:

Hallo;das;ist;eine;sehr:lange;Zeichenfolge

Mit der folgenden Routine k�nnen sie diesen Text bequem ermitteln:
 

s=strParse(Range("A1"),";",3)
'F�r Excel 2000
Public Function strParse(Data, Trenn, Nr)
    On Error Resume Next
    Dim MainData() As String, SplitData() As String
    MainData = Split(Data, Trenn)
    SplitData = Split(MainData(Nr-1), Trenn)
    strParse = SplitData(0)
End Function
'F�r Excel 97 oder �lter
Public Function strParse(ByVal strText As String,_
    ByVal Trennzeichen As String, ByVal Position As Integer) As String
    Dim posStart, posStop, lenCar As Integer
    posStart = 1
    Do While Position > 1
        posStart = InStr(posStart, strText, Trennzeichen) + 1
        Position = Position - 1
    Loop
    posStop = InStr(posStart, strText, Trennzeichen)
    strParse = Mid(strText, posStart, IIf(posStop = 0, _
    Len(strText) + 1, posStop - posStart))
End Function