Wie kann ich per VBA festlegen, dass ein definierter Bereich auf die nächste Seite verschoben wird, sobald dieser die letzte Seitenzeile erreicht?

... komplette Frage anzeigen

2 Antworten

gib dem Bereich einen Namen, zB "Benannt"

If Range("benannt").row + Range("benannt").rows.count -1 > [hier muss die Zeilenzahl des Seitenendes rein] then

Range("Benannt").cut destination:= "Tabelle2".Range(A1(?))

end if

(Trockenübung, probiers einfach aus.)

Soll das als Ereignismakro laufen, man müsste dann die Art des Ereignisses finden, das brauchbar ist. Aber machs erst mal per Einzelmakro-Aufruf!

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von fx8350
22.06.2016, 16:22

Das Problem ist, dass ich den Bereich finden muss, da die ganze Tabelle dynamisch ist und sich die Bereiche verschieben, sobald irgendwo Zeilen eingefügt werden. Also man muss den Bereich bestimmen, mit Textinhalt oder so.  Hier wäre der Inhalt unter anderem "Arbeitspaket abgeschlossen:" der steht in verbundenen Zellen...

0

Neuer Anlauf:

Dim C, R, Rmax '°Seite°.rows.count -4 als Rmax ist eine festzustellende Zahl, kenne zumindest keinen automatischen Befehl dazu

...

For each C in M1:M60 '60 sollte reichen?

If C.value = "Arbeitspaket abgeschlossen:" then R = C.row

if R >= Rmax then Range("B!1:"&Rmax).cut

Range("B!" & Rmax+4" & ":" & Rmax+4).insert

...

Danach das
"Arbeitspaket abgeschlossen" wieder einfügen und Zellen verbinden, weiß ja nicht, wohin Du das neu haben willst.

Das ganze sollte also das Arbeitspaket aus der Seite heraus nach unten (ausserhalb des Druckbereichs? Was ist eigentlich Seite?) versetzen, und zwar die ganzen Zeilen.

Hab das jetzt nicht ausprobiert, ist nur Schema, evtl mit Syntax- oder anderen Fehlern. Zeichne doch einfach mal so einen Vorgang auf!

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von fx8350
23.06.2016, 20:24

Man kann es hier leider nicht bildlich darstellen, sonst würde ich es machen. es ist so, dass der Bereich ab Arbeitspaket das Unterschriften-Feld ist, dass soll immer am Ende der Seite stehen. Andererseits aber auf das Ende der nächsten Seite verschoben werden, wenn der Tabellenbereich über dem Unterschriftenfeld eine zweite Seite erfordert. Ich glaube, dass hier ist für solche Fragen kein geeignetes Forum. Zu wenig Funktionen, um Bilder oder Codes kenntlich zu machen.

0