Hallo Ralf,
besten Dank für deine Tipps. Jetzt werden die Zeilen fortlaufend von 1 bis 19 richtig angesprochen, allerdings stimmen leider nicht die Ausgabewerte in der neuen Spalte (10). Es werden weniger Werte ausgegeben als vorhanden sind. Ich vermute das liegt hier in der Zeile begründet:
Worksheets("Tabelle2").Cells(zeile + i, 10).Value = myArray(i)
und zwar am "myArray(i)"
Das müsste noch in die richtige Folge gebracht werden.
Anbei der korrigierte Code
Sub SplitCommaSeparatedString()
Dim myString As String
Dim myArray() As String
Dim i As Integer
Dim j As Integer
Dim zeile As Long, spalte As Long
zeile = 2 'Beispiel: mit Zeile 2 beginnend
spalte = 11 'Beispiel: Spalte 11
For j = 1 To 19
'Den Wert der Zelle auslesen
myString = Cells(zeile, spalte).Value
'Leerzeichen rauslöschen
myString = Replace(myString, " ", "")
'Den String mit Komma als Trennzeichen aufteilen
myArray = Split(myString, ",")
'Ausgabe des Arrays in das Direktfenster (Optional)
For i = LBound(myArray) To UBound(myArray) - 1 'das letzte Arrayelement nicht nehmen
'Debug.Print myArray(i)
'Debug.Print "Zeile vor Ausgabe = " & zeile
Worksheets("Tabelle2").Cells(zeile, 10).Value = myArray(i)
zeile = zeile + 1
Debug.Print myArray(i)
Debug.Print "Zeile nach Ausgabe = " & zeile
Next i
Next j
End Sub
|