Hallo ihr Lieben :-)
Ich stehe vor einem eigentlich "einfachen" Problem - bekomme es aber leider nicht gelöst.
Ich habe eine Tabelle mit 4 Spalten. In der ersten Spalte befinden sich Namen, in der zweiten Spalte Zahlen(codes) (dritte und vierte Spalte sind noch nicht relevant).
Es kann vorkommen, dass es mehrere Zahlencodes für einen Namem gibt. Das heiß, es kann sein, dass in der ersten Spalte ein Name steht und in der zweiten 1 bis mehrere Zahlen.
Mein Programm soll also im Grunde nur die gefüllten Zeilen in der zweiten Spalte zählen bis zu einer Leerzeile (diese soll automatisiert eingefügt werden) und dann so viele neue Zeilen einfügen wie es gefüllte Zeilen gibt +1 Leerzeile, damit der gesamte Tabelleninhalt runter "rutscht" und für einen neuen Namen mit Zahlencode platz macht...
Also Sinn des Programmes ist es, immer einen neuen Eintag hinzuzufügen und alle anderen Einträge nach unten zu verschieben. Der Schwierigkeitsgrad ist es, dass es leider nicht immer nur eine Zeile nach unten ist oder eine bestimmte Anzahl von Zeilen sind, sondern die Anzahl abhängig ist von den Einträgen in der zweiten Spalte.
Ich hoffe, dass das verständlich erklärt ist :-D
Mein Ansatz war es, nach der Tabellenüberschrift die gefüllten Zeilen zu zählen und dann mit ener For-Schleife so viele neue Zeilen nach der Tabellenüberschrift einzufügen. Aber das klappt leider nicht.
Hier mal mein bisheriger Code:
Sub Zeilenzaehlen()
Dim Zeilenzahl As Variant
Dim i As Integer
Dim n As Integer
Dim m As Integer
Dim k As Integer
Zeilenanzahl = Worksheets("Sendungsverfolgung").Range("B4").End(xlDown).Row - 3
'MsgBox "Zahl lautet:" & Zeilenanzahl
m = 4 + Zeilenanzahl
For k = 4 To m
Worksheets("Sendungsverfolgung").Rows(4).Insert
Next
End Sub
|