Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA Seitenumbruch
#1
Hallo zusammen,
ich habe eine Excel Datei erstellt, in der je nachdem welcher Text befüllt (über Formeln) wird, unterschiedlich viele Zeilen pro Seite angezeigt werden (Druckbereich/ Seitenvorschau).

Gibt es einen Makro, der einen automatischen Seitenumbruch macht, wenn eine Überschrift in der letzten Zeile erscheint. Z.b. wenn ich die Überschriften als "Überschrift 1" formatiert habe.
Überschriften sollen nicht allein in der letzten Zeile einer Seite stehen.

Vielen Dank und liebe Grüße,
Theresa
Antworten Top
#2
Hi Theresa,

ist es immer die gleiche Überschrift? Dann würde ich die nicht manuell eintragen, sondern von Excel machen lassen. Damit hast du bei jedem automatischen Zeilenumbruch deine Überschrift.

Dazu musst du unter Seitenlayout/Drucktitel die entsprechende Wiederholungszeile eingeben.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#3
Hi,
nein es sind verschiedene Überschriften.
Im Konkreten ist es ein Vertragsmuster:
§ 1 Vertragsparteien
TEXT...
§ 2
Text...

usw

Und so sollen eben keine Überschriften (§ Nummern) auf der letzten Seite allein stehen.

Danke für die schnelle Antwort :)
Antworten Top
#4
Ok, Theresa,

da kann ich dir nicht helfen. Gestatte mir aber trotzdem die Frage, wieso du (Gesetzes)Texte in Excel schreibst. Dazu wurde doch von Microsoft das Programm WORD kreiert.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#5
Es werden Eingaben getroffen in Excel z.B. Gehaltsangaben, Mitarbeiterdaten und anhand der Eingaben werden Verträge erstellt.
Die Excel Lösung ist schon ziemlich klasse (wenn auch unkonventionell für ein Schriftstück ich weiß), nur der letzte Schrift der Formatierung muss noch von Hand geschehen bisher, sonst läuft alles automatisch.
Antworten Top
#6
Hallo Theresa,

... ich würde die Geschichte mit dem Seitenumbruch "auslitern".

je nachdem, wie die Zeilenhöhe im Excel eingestellt ist, und wie
sich Dein Drucker verhält, die Summe der ausgegebenen Zeilen
kann von Drucker zu Drucker auch sehr unterschiedlich sein,
würde ich mir die Zeit nehmen, eine mir passende Feinabstimmung
aller Komponenten zu erreichen und das so speichern. Mit der
Seitenumbruch-Vorschau kann man auf einfache Weise genaue
Seitenumbrüche festlegen.
Aus Erfahrung kann ich guten Gewissens sagen, daß das sehr
zufriedenstellende Ergebnisse bringt.

Im Übrigen ist es auch möglich, Vorlagenblätter zu erzeugen.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#7
Hallo Theresa,

(28.05.2019, 14:57)Theresa1990 schrieb: Z.b. wenn ich die Überschriften als "Überschrift 1" formatiert habe.

wie machst Du das in Excel? Denn für mich klingt das eher nach MS Word.

Gruß Uwe
Antworten Top
#8
Hallo Uwe,
bei Start Formatvorlagen Überschrift :)
Antworten Top
#9
Hallo Theresa,

was es nicht alles gibt. Blush Danke. Smile

Teste es mal mit folgender VBA-Prozedur:
Sub HorizontaleSeitenumbruecheAnpassen()
Dim lngZ As Long
With ActiveSheet
.ResetAllPageBreaks
On Error Resume Next
For lngZ = 1 To .HPageBreaks.Count
If .HPageBreaks(lngZ).Location.Offset(-1).Style = "Überschrift 1" Then
.HPageBreaks.Add .HPageBreaks(lngZ).Location.Offset(-1)
End If
Next lngZ
On Error GoTo 0
End With
End Sub
Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste