Hallo,
ich habe folgendes Problem:
Mein Code trennt den Inhalt einer Zelle und schreibt die Namensbestandteile darunter. Es sind maximal fünf Bestandteile, also es geht maximal von Zeile 1 bis 5.
Das klappt bisher auch insofern, wenn alle Zellen fünf Bestandteile haben, also viermal das Trennzeichen darin vorkommt. Es kommt jedoch auch vor, dass manche nur zwei- oder dreimal das Trennezeichen haben und dann liefert folgender Code die Fehlermeldung "Laufzeitfehler 424 Objekt erforderlich".
Sub test()
Dim ws As Worksheet
Set ws = Sheets("Daten")
lRow = Range("C1").End(xlDown).Row
lColumn = Range("C1").End(xlToRight).Column
Dim actualRange As Range
Dim tmpString As String
For Each actualRange In ws.Range(Cells(1, 3), Cells(1, lColumn))
tmpString = actualRange.Value
If InStr(Trim(tmpString), "_") > 0 Then
actualRange.Offset(0, 0).Value = Split(tmpString, "_")(0)
actualRange.Offset(1, 0).Value = Split(tmpString, "_")(1)
actualRange.Offset(2, 0).Value = Split(tmpString, "_")(2)
actualRange.Offset(3, 0).Value = Split(tmpString, "_")(3)
actualRange.Offset(4, 0).Value = Split(tmpString, "_")(4)
End If
Next
End Sub
Ich bräuchte also eine Lösung, sodass einfach nichts in die Zelle geschrieben wird, wenn es nicht überall die maximale Anzahl an Namensbestandteilen gibt.
LG Peter