wir möchten gern folgendes Problem lösen: Hier gibt es eine Excel-Tabelle, die sich über 13 DIN A4-Seiten erstreckt. Auf der ersten Seite gibt es 72 Zeilen, auf den darauffolgenden immer 66 Zeilen. Das, was in der untersten Zeile (bezogen auf eine DIN A4-Seite) steht, soll dort immer stehen bleiben. Nun werden in den übrigen Zeilen aus einer anderen Anwendung Daten importiert. Dabei kann es vorkommen, dass in der Spalte C immer wieder mehr Zeichen stehen, als die Spalte breit ist. Mit einem Makro werden die überzähligen Zeichen in die darunter liegende Zelle eingefügt und es werden dafür neue Zeilen eingefügt. Mit jeder neu eingefügten Zeile werden die bis dahin letzten Zeilen bezogen auf eine DIN A4-Seite (in unserem Bsp. die Zeilen 72, 138, 204, 270, 336, usw.) um eine nach unten verschoben. Nun möchten wir, dass sie mit Hilfe eines Makros immer wieder an ihre alte Position gesetzt werden. Unser bisheriges Makro, das wir u.a. auch mit fremder Hilfe erstellten, sieht so aus:
Dim länge As String
Dim t As Integer
Sub test()
t = 1
n = 255
For Each C In Worksheets(1).Range("C1:C2000")
länge = C.Text
länge4 = Left(länge, 30)
If länge4 > "" Then
erste = Left(länge, 30) 'ersten 30 Buchstaben
rest = Mid(länge, 31, n) 'alles ab 31
Range("C" & CInt(t) & "").Select
ActiveCell.Value = erste
If rest <> "" Then
Rows(ActiveCell.Row + 1).Insert Shift:=xlDown
Range("C" & CInt(t + 1) & "").Select
ActiveCell.Value = rest
End If
End If
t = t + 1
Next C
End Sub
Kann uns da bitte jemand weiterhelfen. Vielen Dank schon mal.
Grüße
Jörgi