ich habe da ein kleines Problem. Ich habe unterschiedlich lange Strings, wie z. Bsp.: "Page,Device,Group,ItemID,Item,Value". Ich brauche aber nur die beiden letzten Worte (Value und Item). Diese möchte ich dann in unterschiedliche Zellen schreiben. Ich hab das erstmal so gemacht:
Sub daten()
dateiname = Application.GetOpenFilename("Textdateien,*.txt")
If dateiname = "Falsch" Then Exit Sub
zeile = 1
spalte = 1
Open dateiname For Input As #1
Do While Not EOF(1)
For iline = a To b
Line Input #1, sTxt
sTxt = WorksheetFunction.Trim(sTxt)
stelle = Right(sTxt, InStr(sTxt, ","))
laenge = Len(stelle)
sTxt = Left(sTxt, Len(sTxt) - laenge)
stelle2 = Right(sTxt, InStr(sTxt, ","))
laenge = Len(stelle2)
Cells(zeile + 1, spalte).Value = Left(stelle2, laenge - 1)
Cells(zeile + 1, spalte + 1).Value = stelle
spalte = spalte + 1
Next iline
a = a + 2
b = b + 2
zeile = zeile + 1
spalte = 1
Loop
Close
End Sub
Das funktioniert bei dem String oben auch prima aber wenn das Komma nach dem ich immer suche im String mehr als 8 Stellen "entfernt" ist, klappt es nicht mehr und das InStr hat immer den Wert 8. Bei dem String: "Bericht,,,257,Version,AIDA32 v3.20", schreibt er mir in die Zellen: "ion,AID" und "32 v3.20".
Ich hoffe mir kann einer sagen, was ich falsch mache oder wie das einfacher zu lösen wäre (Wie man an dem Code sehen kann bin ich noch Anfänger).
Vielen Dank schonmal,
mfg Christian.